\r
package org.onap.holmes.common.utils;\r
\r
-import com.eclipsesource.jaxrs.consumer.ConsumerFactory;\r
-import javax.ws.rs.QueryParam;\r
import org.easymock.EasyMock;\r
import org.junit.Rule;\r
import org.junit.Test;\r
-import org.onap.holmes.common.msb.MicroserviceBusRest;\r
-import org.onap.holmes.common.api.entity.ServiceRegisterEntity;\r
import org.onap.holmes.common.config.MicroServiceConfig;\r
+import org.onap.holmes.common.exception.CorrelationException;\r
+import org.onap.msb.sdk.discovery.entity.MicroServiceFullInfo;\r
+import org.onap.msb.sdk.discovery.entity.MicroServiceInfo;\r
+import org.onap.msb.sdk.httpclient.msb.MSBServiceClient;\r
import org.powermock.api.easymock.PowerMock;\r
+import org.powermock.core.classloader.annotations.PowerMockIgnore;\r
import org.powermock.core.classloader.annotations.PrepareForTest;\r
import org.powermock.modules.junit4.rule.PowerMockRule;\r
\r
-@PrepareForTest(ConsumerFactory.class)\r
+@PrepareForTest({MicroServiceConfig.class, MSBServiceClient.class, MSBRegisterUtil.class})\r
+@PowerMockIgnore({"javax.ws.*"})\r
public class MSBRegisterUtilTest {\r
\r
@Rule\r
public PowerMockRule powerMockRule = new PowerMockRule();\r
private MSBRegisterUtil msbRegisterUtil = new MSBRegisterUtil();\r
- private MicroserviceBusRest microserviceBusRest = new MicroserviceBusRestProxy();\r
\r
@Test\r
- public void registerTest() throws Exception {\r
- ServiceRegisterEntity entity = initServiceEntity();\r
- PowerMock.mockStatic(ConsumerFactory.class);\r
- EasyMock.expect(ConsumerFactory\r
- .createConsumer(EasyMock.anyObject(String.class), EasyMock.anyObject(Class.class)))\r
- .andReturn(microserviceBusRest);\r
- PowerMock.replayAll();\r
+ public void test_register2Msb_normal() throws Exception {\r
+ MicroServiceInfo msi = new MicroServiceInfo();\r
+ String[] msbAddrInfo = {"127.0.0.1", "80"};\r
\r
- msbRegisterUtil.register(initServiceEntity());\r
+ PowerMock.mockStatic(MicroServiceConfig.class);\r
+ EasyMock.expect(MicroServiceConfig.getMsbIpAndPort()).andReturn(msbAddrInfo);\r
\r
- PowerMock.verifyAll();\r
- }\r
+ MSBServiceClient client = PowerMock.createMock(MSBServiceClient.class);\r
+ PowerMock.expectNew(MSBServiceClient.class, msbAddrInfo[0], Integer.parseInt(msbAddrInfo[1])).andReturn(client);\r
\r
- private ServiceRegisterEntity initServiceEntity() {\r
- ServiceRegisterEntity serviceRegisterEntity = new ServiceRegisterEntity();\r
- serviceRegisterEntity.setServiceName("holmes-rule-mgmt");\r
- serviceRegisterEntity.setProtocol("REST");\r
- serviceRegisterEntity.setVersion("v1");\r
- serviceRegisterEntity.setUrl("/api/holmes-rule-mgmt/v1");\r
- serviceRegisterEntity.setSingleNode(MicroServiceConfig.getServiceIp(), "9101", 0);\r
- serviceRegisterEntity.setVisualRange("1|0");\r
- return serviceRegisterEntity;\r
- }\r
+ EasyMock.expect(client.registerMicroServiceInfo(msi, false)).andReturn(null);\r
\r
- class MicroserviceBusRestProxy implements MicroserviceBusRest {\r
+ EasyMock.expect(client.registerMicroServiceInfo(msi, false)).andReturn(new MicroServiceFullInfo());\r
\r
- @Override\r
- public ServiceRegisterEntity registerServce(@QueryParam("createOrUpdate") String createOrUpdate,\r
- ServiceRegisterEntity entity) {\r
- return null;\r
+ PowerMock.replayAll();\r
+\r
+ try {\r
+ msbRegisterUtil.register2Msb(msi);\r
+ } catch (CorrelationException e) {\r
+ // Do nothing\r
}\r
+\r
+ PowerMock.verifyAll();\r
}\r
}
\ No newline at end of file