2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.sdc.be.components.distribution.engine;
23 import static org.mockito.ArgumentMatchers.anyString;
24 import static org.mockito.Mockito.mock;
25 import static org.mockito.Mockito.when;
27 import mockit.Deencapsulation;
28 import org.junit.Test;
29 import org.openecomp.sdc.be.components.BeConfDependentTest;
30 import org.openecomp.sdc.be.components.distribution.engine.DistributionEngineClusterHealth.HealthCheckScheduledTask;
31 import org.openecomp.sdc.common.api.HealthCheckInfo;
33 import java.util.HashMap;
34 import java.util.LinkedList;
36 import java.util.concurrent.atomic.AtomicBoolean;
37 import org.openecomp.sdc.be.resources.data.OperationalEnvironmentEntry;
39 public class DistributionEngineClusterHealthTest extends BeConfDependentTest{
41 private DistributionEngineClusterHealth createTestSubject() {
42 return new DistributionEngineClusterHealth();
46 public void testDestroy() throws Exception {
47 DistributionEngineClusterHealth testSubject;
50 testSubject = createTestSubject();
51 Deencapsulation.invoke(testSubject, "destroy");
55 public void testStartHealthCheckTask() throws Exception {
56 DistributionEngineClusterHealth testSubject;
57 Map<String, AtomicBoolean> envNamePerStatus = null;
58 boolean startTask = false;
61 testSubject = createTestSubject();
62 testSubject.startHealthCheckTask(envNamePerStatus, startTask);
66 public void testStartHealthCheckTask_1() {
67 final DistributionEngineClusterHealth distributionEngineClusterHealth = new DistributionEngineClusterHealth();
68 final Map<String, AtomicBoolean> envNamePerStatus = new HashMap<>();
69 distributionEngineClusterHealth.init("myKey");
70 distributionEngineClusterHealth.startHealthCheckTask(envNamePerStatus);
74 public void testHealthCheckScheduledTask() throws Exception {
75 DistributionEngineClusterHealth testSubject;
76 Map<String, AtomicBoolean> envNamePerStatus = new HashMap<>();
79 testSubject = createTestSubject();
80 HealthCheckScheduledTask healthCheckScheduledTask = testSubject. new HealthCheckScheduledTask(new LinkedList<>());
81 LinkedList<UebHealthCheckCall> healthCheckCalls = new LinkedList<>();
82 UebHealthCheckCall hcc = new UebHealthCheckCall("mock", "mock");
83 healthCheckCalls.add(hcc);
84 healthCheckScheduledTask.healthCheckCalls = healthCheckCalls;
86 Deencapsulation.invoke(healthCheckScheduledTask, "queryUeb");
90 public void testHealthCheckScheduledTaskRun() throws Exception {
91 DistributionEngineClusterHealth testSubject;
92 Map<String, AtomicBoolean> envNamePerStatus = new HashMap<>();
93 envNamePerStatus.put("mock", new AtomicBoolean(true));
95 testSubject = createTestSubject();
96 testSubject.startHealthCheckTask(envNamePerStatus, false);
97 HealthCheckScheduledTask healthCheckScheduledTask = testSubject. new HealthCheckScheduledTask(new LinkedList<>());
98 LinkedList<UebHealthCheckCall> healthCheckCalls = new LinkedList<>();
99 UebHealthCheckCall hcc = new UebHealthCheckCall("mock", "mock");
100 healthCheckCalls.add(hcc);
101 healthCheckScheduledTask.healthCheckCalls = healthCheckCalls;
103 Deencapsulation.invoke(healthCheckScheduledTask, "run");
107 public void testHealthCheckScheduledTaskRun_2() throws Exception {
108 DistributionEngineClusterHealth testSubject;
109 Map<String, AtomicBoolean> envNamePerStatus = new HashMap<>();
110 envNamePerStatus.put("mock", new AtomicBoolean(false));
112 testSubject = createTestSubject();
113 testSubject.startHealthCheckTask(envNamePerStatus, false);
114 HealthCheckScheduledTask healthCheckScheduledTask = testSubject. new HealthCheckScheduledTask(new LinkedList<>());
115 LinkedList<UebHealthCheckCall> healthCheckCalls = new LinkedList<>();
116 UebHealthCheckCall hcc = new UebHealthCheckCall("mock", "mock");
117 healthCheckCalls.add(hcc);
118 healthCheckScheduledTask.healthCheckCalls = healthCheckCalls;
120 Deencapsulation.invoke(healthCheckScheduledTask, "run");
124 public void testLogAlarm() throws Exception {
125 DistributionEngineClusterHealth testSubject;
126 boolean lastHealthState = false;
129 testSubject = createTestSubject();
130 Deencapsulation.invoke(testSubject, "logAlarm", new Object[] { lastHealthState });
134 public void testGetHealthCheckInfo() throws Exception {
135 DistributionEngineClusterHealth testSubject;
136 HealthCheckInfo result;
139 testSubject = createTestSubject();
140 result = testSubject.getHealthCheckInfo();
144 public void testSetHealthCheckUebIsDisabled() throws Exception {
145 DistributionEngineClusterHealth testSubject;
148 testSubject = createTestSubject();
149 testSubject.setHealthCheckUebIsDisabled();
153 public void testSetHealthCheckUebConfigurationError() throws Exception {
154 DistributionEngineClusterHealth testSubject;
157 testSubject = createTestSubject();
158 testSubject.setHealthCheckUebConfigurationError();
162 public void testSetHealthCheckOkAndReportInCaseLastStateIsDown() throws Exception {
163 DistributionEngineClusterHealth testSubject;
166 testSubject = createTestSubject();
167 testSubject.setHealthCheckOkAndReportInCaseLastStateIsDown();