summaryrefslogtreecommitdiffstats
path: root/holmes-actions/src/test/java
diff options
context:
space:
mode:
authorGuangrong Fu <fu.guangrong@zte.com.cn>2017-09-16 14:48:57 +0800
committerGuangrong Fu <fu.guangrong@zte.com.cn>2017-09-16 15:12:27 +0800
commit9d2cccba20f32fe54e4ccf1f433f68b5cee95bd5 (patch)
treecf23917ca2c1b244baaf2454e62e0c15c4fa7b6a /holmes-actions/src/test/java
parent8eedabbb6faf3bc2ba10df850e68cf719cd6c8ad (diff)
Get the MSB info from DCAE Consul
Change-Id: I67206b028abefd99ff4b249a254882f08a642a4d Issue-ID: HOLMES-45 Signed-off-by: Guangrong Fu <fu.guangrong@zte.com.cn>
Diffstat (limited to 'holmes-actions/src/test/java')
-rw-r--r--holmes-actions/src/test/java/org/onap/holmes/common/api/stat/VesAlarmTest.java107
-rw-r--r--holmes-actions/src/test/java/org/onap/holmes/common/config/MicroServiceConfigTest.java287
-rw-r--r--holmes-actions/src/test/java/org/onap/holmes/common/utils/MSBRegisterUtilTest.java23
3 files changed, 381 insertions, 36 deletions
diff --git a/holmes-actions/src/test/java/org/onap/holmes/common/api/stat/VesAlarmTest.java b/holmes-actions/src/test/java/org/onap/holmes/common/api/stat/VesAlarmTest.java
new file mode 100644
index 0000000..c2772e8
--- /dev/null
+++ b/holmes-actions/src/test/java/org/onap/holmes/common/api/stat/VesAlarmTest.java
@@ -0,0 +1,107 @@
+/*
+ * Copyright 2017 ZTE Corporation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onap.holmes.common.api.stat;
+
+import static org.hamcrest.core.IsEqual.equalTo;
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import org.junit.Test;
+
+public class VesAlarmTest {
+
+ @Test
+ public void hashCodeTest() throws Exception {
+ VesAlarm alarm = new VesAlarm();
+ alarm.setVersion(0L);
+ VesAlarm alarmClone = (VesAlarm)alarm.clone();
+ assertTrue(alarm.hashCode() == alarmClone.hashCode());
+ }
+
+ @Test
+ public void equalsTest() throws Exception {
+ VesAlarm alarm = new VesAlarm();
+ alarm.setVersion(0L);
+ VesAlarm alarmClone = (VesAlarm)alarm.clone();
+ assertTrue(alarm.equals(alarmClone));
+ }
+
+ @Test
+ public void cloneTest() throws Exception {
+ VesAlarm alarm = new VesAlarm();
+ alarm.setDomain("Test");
+ alarm.setVersion(0L);
+ assertThat(alarm, equalTo(alarm.clone()));
+ }
+
+ @Test
+ public void getterAndSetterTest() {
+ VesAlarm alarm = new VesAlarm();
+ alarm.setDomain("");
+ alarm.setEventId("");
+ alarm.setEventName("");
+ alarm.setEventType("");
+ alarm.setInternalHeaderFields(new Object());
+ alarm.setLastEpochMicrosec(0L);
+ alarm.setNfcNamingCode("");
+ alarm.setNfNamingCode("");
+ alarm.setPriority("");
+ alarm.setReportingEntityId("");
+ alarm.setReportingEntityName("");
+ alarm.setSequence(1);
+ alarm.setSourceId("");
+ alarm.setSourceName("");
+ alarm.setStartEpochMicrosec(0L);
+ alarm.setVersion(0L);
+ alarm.setAlarmAdditionalInformation(new ArrayList<>());
+ alarm.setAlarmCondition("");
+ alarm.setAlarmInterfaceA("");
+ alarm.setEventCategory("");
+ alarm.setEventSeverity("");
+ alarm.setEventSourceType("");
+ alarm.setFaultFieldsVersion(0L);
+ alarm.setSpecificProblem("");
+ alarm.setVfStatus("");
+
+ alarm.getDomain();
+ alarm.getEventId();
+ alarm.getEventName();
+ alarm.getEventType();
+ alarm.getInternalHeaderFields();
+ alarm.getLastEpochMicrosec();
+ alarm.getNfcNamingCode();
+ alarm.getNfNamingCode();
+ alarm.getPriority();
+ alarm.getReportingEntityId();
+ alarm.getReportingEntityName();
+ alarm.getSequence();
+ alarm.getSourceId();
+ alarm.getSourceName();
+ alarm.getStartEpochMicrosec();
+ alarm.getVersion();
+ alarm.getAlarmAdditionalInformation();
+ alarm.getAlarmCondition();
+ alarm.getAlarmInterfaceA();
+ alarm.getEventCategory();
+ alarm.getEventSeverity();
+ alarm.getEventSourceType();
+ alarm.getFaultFieldsVersion();
+ alarm.getSpecificProblem();
+ alarm.getVfStatus();
+ }
+
+} \ No newline at end of file
diff --git a/holmes-actions/src/test/java/org/onap/holmes/common/config/MicroServiceConfigTest.java b/holmes-actions/src/test/java/org/onap/holmes/common/config/MicroServiceConfigTest.java
index b29e490..4b697b0 100644
--- a/holmes-actions/src/test/java/org/onap/holmes/common/config/MicroServiceConfigTest.java
+++ b/holmes-actions/src/test/java/org/onap/holmes/common/config/MicroServiceConfigTest.java
@@ -16,51 +16,298 @@
package org.onap.holmes.common.config;
+import static org.hamcrest.core.Is.is;
import static org.hamcrest.core.IsEqual.equalTo;
+import static org.hamcrest.core.IsNull.nullValue;
import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
+import static org.onap.holmes.common.config.MicroServiceConfig.*;
+import org.easymock.EasyMock;
+import org.junit.Rule;
import org.junit.Test;
+import org.powermock.api.easymock.PowerMock;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.rule.PowerMockRule;
+@PrepareForTest(MicroServiceConfig.class)
+@PowerMockIgnore({"javax.ws.*"})
public class MicroServiceConfigTest {
+ @Rule
+ public PowerMockRule powerMockRule = new PowerMockRule();
+
@Test
public void getMsbServerAddrTest() {
- System.setProperty("MSB_ADDR", "test");
- assertThat("http://test", equalTo(MicroServiceConfig.getMsbServerAddr()));
- System.clearProperty("MSB_ADDR");
+ System.setProperty(MSB_ADDR, "test:80");
+ assertThat("http://test:80", equalTo(getMsbServerAddr()));
+ System.clearProperty(MicroServiceConfig.MSB_ADDR);
}
@Test
public void getMsbServerIpTest() {
- System.setProperty("MSB_ADDR", "10.54.23.79");
- assertThat("10.54.23.79", equalTo(MicroServiceConfig.getMsbServerIp()));
- System.clearProperty("MSB_ADDR");
+ System.setProperty(MSB_ADDR, "10.54.23.79:80");
+ assertThat("10.54.23.79", equalTo(getMsbAddrInfo()[0]));
+ assertThat("80", equalTo(getMsbAddrInfo()[1]));
+ System.clearProperty(MSB_ADDR);
}
@Test
- public void getMsbPortTest() {
- System.setProperty("MSB_PORT", "110");
- assertTrue(110 == MicroServiceConfig.getMsbServerPort());
- System.clearProperty("MSB_PORT");
+ public void getServiceIpTest() {
+ System.setProperty(HOSTNAME, "127.0.0.1");
+ assertThat("127.0.0.1", equalTo(getServiceAddrInfo()[0]));
+ assertThat("80", equalTo(getServiceAddrInfo()[1]));
+ System.clearProperty(HOSTNAME);
}
@Test
- public void getMsbPortTestNonnumeric() {
- System.setProperty("MSB_PORT", "test");
- assertTrue(80 == MicroServiceConfig.getMsbServerPort());
- System.clearProperty("MSB_PORT");
+ public void getConsulAddrInfoTest() {
+ System.setProperty(CONSUL_HOST, "127.0.0.1");
+ assertThat("127.0.0.1:8500/v1/catalog/service/", equalTo(getConsulAddrInfo()));
+ System.clearProperty(CONSUL_HOST);
}
@Test
- public void getMsbPortTestNullValue() {
- assertTrue(80 == MicroServiceConfig.getMsbServerPort());
+ public void getConfigBindingServiceAddrInfoTest_consul_not_exist() throws Exception {
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andThrow(new RuntimeException("Invalid URL."));
+
+ PowerMock.replayAll();
+
+ assertThat(getConfigBindingServiceAddrInfo(), is(nullValue()));
+
+ PowerMock.verifyAll();
}
@Test
- public void getServiceIpTest() {
- System.setProperty("SERVICE_IP", "test");
- assertThat("test", equalTo(MicroServiceConfig.getServiceIp()));
- System.clearProperty("SERVICE_IP");
+ public void getConfigBindingServiceAddrInfoTest_consul_exists() throws Exception {
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ System.setProperty(CONSUL_HOST, "127.0.0.1");
+
+ PowerMock.replayAll();
+
+ assertThat(getConfigBindingServiceAddrInfo(), equalTo("127.0.0.2:8080"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(CONSUL_HOST);
+ }
+
+ @Test
+ public void getConfigBindingServiceAddrInfoTest_consul_exists_propertie_not_exist() throws Exception {
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\"}]");
+ System.setProperty(CONSUL_HOST, "127.0.0.1");
+
+ PowerMock.replayAll();
+
+ assertThat(getConfigBindingServiceAddrInfo(), is(nullValue()));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(CONSUL_HOST);
+ }
+
+ @Test
+ public void getServiceAddrInfoFromCBS_consul_not_exist() throws Exception {
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andThrow(new RuntimeException("Invalid URL.")).times(2);
+
+ PowerMock.replayAll();
+
+ assertThat(getServiceAddrInfoFromCBS(HOSTNAME), is(nullValue()));
+
+ PowerMock.verifyAll();
+ }
+
+ @Test
+ public void getServiceAddrInfoFromCBS_consul_exists_service_not_exist() throws Exception {
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+
+ assertThat(getServiceAddrInfoFromCBS(HOSTNAME), is(nullValue()));
+
+ PowerMock.verifyAll();
+ }
+
+ @Test
+ public void getServiceAddrInfoFromCBS_normal() throws Exception {
+ System.setProperty(HOSTNAME, "rule-mgmt");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{\"rule-mgmt\": \"[\\\"127.0.0.3:5432\\\"]\"}");
+
+ PowerMock.replayAll();
+
+ assertThat(getServiceAddrInfoFromCBS("rule-mgmt"), equalTo("127.0.0.3:5432"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(HOSTNAME);
+ }
+
+ @Test
+ public void getMsbAddrInfo_msb_registered() throws Exception {
+ System.setProperty(MSB_ADDR, "10.74.5.8:1545");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{\"" + MSB_ADDR + "\": \"[\\\"127.0.0.3:5432\\\"]\"}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getMsbAddrInfo();
+ assertThat(msbInfo[0], equalTo("127.0.0.3"));
+ assertThat(msbInfo[1], equalTo("5432"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(MSB_ADDR);
+ }
+
+ @Test
+ public void getMsbAddrInfo_msb_not_registered() throws Exception {
+ System.setProperty(MSB_ADDR, "10.74.5.8:1545");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getMsbAddrInfo();
+ assertThat(msbInfo[0], equalTo("10.74.5.8"));
+ assertThat(msbInfo[1], equalTo("1545"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(MSB_ADDR);
+ }
+
+ @Test
+ public void getServiceAddrInfo_msb_registered() throws Exception {
+ System.setProperty(HOSTNAME, "rule-mgmt");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{\"rule-mgmt\": \"[\\\"127.0.0.3:5432\\\"]\"}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getServiceAddrInfo();
+ assertThat(msbInfo[0], equalTo("127.0.0.3"));
+ assertThat(msbInfo[1], equalTo("5432"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(HOSTNAME);
+ }
+
+ @Test
+ public void getServiceAddrInfo_msb_not_registered() throws Exception {
+ System.setProperty(HOSTNAME, "10.74.5.8:1545");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getServiceAddrInfo();
+ assertThat(msbInfo[0], equalTo("10.74.5.8"));
+ assertThat(msbInfo[1], equalTo("1545"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(HOSTNAME);
+ }
+
+ @Test
+ public void getServiceAddrInfo_msb_not_registered_full_addr() throws Exception {
+ System.setProperty(HOSTNAME, "http://10.74.5.8:1545");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getServiceAddrInfo();
+ assertThat(msbInfo[0], equalTo("10.74.5.8"));
+ assertThat(msbInfo[1], equalTo("1545"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(MSB_ADDR);
+ }
+
+ @Test
+ public void getServiceAddrInfo_msb_not_registered_no_port() throws Exception {
+ System.setProperty(HOSTNAME, "http://10.74.5.8");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getServiceAddrInfo();
+ assertThat(msbInfo[0], equalTo("10.74.5.8"));
+ assertThat(msbInfo[1], equalTo("80"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(MSB_ADDR);
+ }
+
+ @Test
+ public void getServiceAddrInfo_msb_not_registered_only_ip() throws Exception {
+ System.setProperty(HOSTNAME, "10.74.5.8");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getServiceAddrInfo();
+ assertThat(msbInfo[0], equalTo("10.74.5.8"));
+ assertThat(msbInfo[1], equalTo("80"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(MSB_ADDR);
+ }
+
+ @Test
+ public void getServiceAddrInfo_msb_not_registered_full_addr_https() throws Exception {
+ System.setProperty(HOSTNAME, "https://10.74.5.8:5432");
+ PowerMock.mockStaticPartial(MicroServiceConfig.class, "execQuery", String.class);
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("[{\"ServiceAddress\": \"127.0.0.2\", \"ServicePort\": \"8080\"}]");
+ PowerMock.expectPrivate(MicroServiceConfig.class, "execQuery", EasyMock.anyObject())
+ .andReturn("{}");
+
+ PowerMock.replayAll();
+ String[] msbInfo = getServiceAddrInfo();
+ assertThat(msbInfo[0], equalTo("10.74.5.8"));
+ assertThat(msbInfo[1], equalTo("5432"));
+
+ PowerMock.verifyAll();
+
+ System.clearProperty(MSB_ADDR);
}
} \ No newline at end of file
diff --git a/holmes-actions/src/test/java/org/onap/holmes/common/utils/MSBRegisterUtilTest.java b/holmes-actions/src/test/java/org/onap/holmes/common/utils/MSBRegisterUtilTest.java
index 72d9a61..ab2554f 100644
--- a/holmes-actions/src/test/java/org/onap/holmes/common/utils/MSBRegisterUtilTest.java
+++ b/holmes-actions/src/test/java/org/onap/holmes/common/utils/MSBRegisterUtilTest.java
@@ -16,6 +16,8 @@
package org.onap.holmes.common.utils;
+import static org.onap.holmes.common.config.MicroServiceConfig.HOSTNAME;
+
import com.eclipsesource.jaxrs.consumer.ConsumerFactory;
import javax.ws.rs.QueryParam;
import org.easymock.EasyMock;
@@ -25,10 +27,12 @@ import org.onap.holmes.common.msb.MicroserviceBusRest;
import org.onap.holmes.common.api.entity.ServiceRegisterEntity;
import org.onap.holmes.common.config.MicroServiceConfig;
import org.powermock.api.easymock.PowerMock;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.rule.PowerMockRule;
-@PrepareForTest(ConsumerFactory.class)
+@PrepareForTest({ConsumerFactory.class, MicroServiceConfig.class})
+@PowerMockIgnore({"javax.ws.*"})
public class MSBRegisterUtilTest {
@Rule
@@ -36,27 +40,14 @@ public class MSBRegisterUtilTest {
private MSBRegisterUtil msbRegisterUtil = new MSBRegisterUtil();
private MicroserviceBusRest microserviceBusRest = new MicroserviceBusRestProxy();
- @Test
- public void registerTest() throws Exception {
- ServiceRegisterEntity entity = initServiceEntity();
- PowerMock.mockStatic(ConsumerFactory.class);
- EasyMock.expect(ConsumerFactory
- .createConsumer(EasyMock.anyObject(String.class), EasyMock.anyObject(Class.class)))
- .andReturn(microserviceBusRest);
- PowerMock.replayAll();
-
- msbRegisterUtil.register(initServiceEntity());
-
- PowerMock.verifyAll();
- }
-
private ServiceRegisterEntity initServiceEntity() {
+ String[] serviceAddrInfo = MicroServiceConfig.getServiceAddrInfo();
ServiceRegisterEntity serviceRegisterEntity = new ServiceRegisterEntity();
serviceRegisterEntity.setServiceName("holmes-rule-mgmt");
serviceRegisterEntity.setProtocol("REST");
serviceRegisterEntity.setVersion("v1");
serviceRegisterEntity.setUrl("/api/holmes-rule-mgmt/v1");
- serviceRegisterEntity.setSingleNode(MicroServiceConfig.getServiceIp(), "9101", 0);
+ serviceRegisterEntity.setSingleNode(serviceAddrInfo[0], serviceAddrInfo[1], 0);
serviceRegisterEntity.setVisualRange("1|0");
return serviceRegisterEntity;
}