add alarm synchronization related operation
[holmes/engine-management.git] / engine-d / src / test / java / org / onap / holmes / engine / EngineDActiveAppTest.java
index 2c6cdb7..4f8aa2b 100644 (file)
  */\r
 package org.onap.holmes.engine;\r
 \r
+import org.easymock.EasyMock;\r
+import org.junit.Test;\r
+import org.junit.runner.RunWith;\r
+import org.onap.holmes.common.config.MicroServiceConfig;\r
+import org.onap.msb.sdk.discovery.entity.MicroServiceInfo;\r
+import org.onap.msb.sdk.discovery.entity.Node;\r
+import org.powermock.api.easymock.PowerMock;\r
+import org.powermock.core.classloader.annotations.PrepareForTest;\r
+import org.powermock.modules.junit4.PowerMockRunner;\r
+import org.powermock.reflect.Whitebox;\r
+\r
+import static org.hamcrest.CoreMatchers.equalTo;\r
+import static org.hamcrest.CoreMatchers.is;\r
+import static org.junit.Assert.assertThat;\r
+\r
+@PrepareForTest(MicroServiceConfig.class)\r
+@RunWith(PowerMockRunner.class)\r
 public class EngineDActiveAppTest {\r
+\r
     public static void main(String[] args) throws Exception {\r
         String filePath = "C:\\engine-d.yml";\r
         new EngineDActiveApp().run(new String[]{"server", filePath});\r
     }\r
+\r
+    @Test\r
+    public void testCreateMicroServiceInfo() throws Exception {\r
+        EngineDActiveApp engineDActiveApp = new EngineDActiveApp();\r
+        PowerMock.mockStatic(MicroServiceConfig.class);\r
+        String[] serviceAddrInfo = new String[2];\r
+        serviceAddrInfo[0] = "10.74.216.82";\r
+        serviceAddrInfo[1] = "80";\r
+        EasyMock.expect(MicroServiceConfig.getMicroServiceIpAndPort()).andReturn(serviceAddrInfo);\r
+        EasyMock.expectLastCall();\r
+        PowerMock.replayAll();\r
+\r
+        MicroServiceInfo msinfo = Whitebox.invokeMethod(engineDActiveApp,"createMicroServiceInfo");\r
+\r
+        PowerMock.verifyAll();\r
+\r
+        assertThat(msinfo.getServiceName(), equalTo("holmes-engine-mgmt"));\r
+        assertThat(msinfo.getVersion(), equalTo("v1"));\r
+        assertThat(msinfo.getUrl(), equalTo("/api/holmes-engine-mgmt/v1"));\r
+        assertThat(msinfo.getProtocol(), equalTo("REST"));\r
+        assertThat(msinfo.getVisualRange(), equalTo("0|1"));\r
+        assertThat(msinfo.isEnable_ssl(), is(true));\r
+        assertThat(msinfo.getNodes().toArray(new Node[0])[0].getIp(), equalTo(serviceAddrInfo[0]));\r
+        assertThat(msinfo.getNodes().toArray(new Node[0])[0].getPort(), equalTo(serviceAddrInfo[1]));\r
+    }\r
 }\r