.getE2EServiceInstances("12345", "v3", "123456");\r
\r
}\r
+ \r
+ @Test\r
+ public void updateE2EServiceInstanceTestNormal() {\r
+ new MockUp<RequestsDatabase>() {\r
+ @Mock\r
+ public OperationStatus getOperationStatusByServiceId(\r
+ String serviceID) {\r
+ OperationStatus operationStatus = new OperationStatus();\r
+ operationStatus.setProgress("100");\r
+ return operationStatus;\r
+ }\r
+ };\r
+ new MockUp<E2EServiceInstances>() {\r
+ @Mock\r
+ private void createOperationStatusRecordForError(Action action,\r
+ String requestId) throws MsoDatabaseException {\r
+\r
+ }\r
+ };\r
+ new MockUp<CatalogDatabase>() {\r
+ @Mock\r
+ public Service getServiceByModelName(String modelName) {\r
+ Service svc = new Service();\r
+ return svc;\r
+ }\r
+ };\r
+\r
+ new MockUp<CatalogDatabase>() {\r
+ @Mock\r
+ public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID,\r
+ String action) {\r
+ ServiceRecipe rec = new ServiceRecipe();\r
+ return rec;\r
+ }\r
+ };\r
+\r
+ new MockUp<RequestClientFactory>() {\r
+ @Mock\r
+ public RequestClient getRequestClient(String orchestrationURI,\r
+ MsoJavaProperties props) throws IllegalStateException {\r
+ RequestClient client = new CamundaClient();\r
+ client.setUrl("/test/url");\r
+ return client;\r
+ }\r
+ };\r
+\r
+ new MockUp<CamundaClient>() {\r
+ @Mock\r
+ public HttpResponse post(String requestId, boolean isBaseVfModule,\r
+ int recipeTimeout, String requestAction,\r
+ String serviceInstanceId, String vnfId, String vfModuleId,\r
+ String volumeGroupId, String networkId, String serviceType,\r
+ String vnfType, String vfModuleType, String networkType,\r
+ String requestDetails, String recipeParamXsd) {\r
+ ProtocolVersion pv = new ProtocolVersion("HTTP", 1, 1);\r
+ HttpResponse resp = new BasicHttpResponse(pv, 202,\r
+ "test response");\r
+ BasicHttpEntity entity = new BasicHttpEntity();\r
+ String body = "{\"response\":\"success\",\"message\":\"success\"}";\r
+ InputStream instream = new ByteArrayInputStream(body.getBytes());\r
+ entity.setContent(instream);\r
+ resp.setEntity(entity);\r
+ return resp;\r
+ }\r
+ };\r
+\r
+ E2EServiceInstances instance = new E2EServiceInstances();\r
+ String request = "{\"service\":{\"name\":\"so_test4\",\"description\":\"so_test2\",\"serviceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561519\",\"templateId\":\"592f9437-a9c0-4303-b9f6-c445bb7e9814\",\"parameters\":{\"globalSubscriberId\":\"123457\",\"subscriberName\":\"Customer1\",\"serviceType\":\"voLTE\",\"templateName\":\"voLTE Service:1.0\",\"resources\":[{\"resourceName\":\"vIMS\",\"resourceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561516\",\"resourceId\":\"60c3e96e-0970-4871-b6e0-3b6de7561512\",\"nsParameters\":{\"locationConstraints\":[{\"vnfProfileId\":\"zte-vBAS-1.0\",\"locationConstraints\":{\"vimId\":\"4050083f-465f-4838-af1e-47a545222ad0\"}},{\"vnfProfileId\":\"zte-vMME-1.0\",\"locationConstraints\":{\"vimId\":\"4050083f-465f-4838-af1e-47a545222ad0\"}}],\"additionalParamForNs\":{}}},{\"resourceName\":\"vEPC\",\"resourceDefId\":\"61c3e96e-0970-4871-b6e0-3b6de7561516\",\"resourceId\":\"62c3e96e-0970-4871-b6e0-3b6de7561512\",\"nsParameters\":{\"locationConstraints\":[{\"vnfProfileId\":\"zte-CSCF-1.0\",\"locationConstraints\":{\"vimId\":\"4050083f-465f-4838-af1e-47a545222ad1\"}}],\"additionalParamForNs\":{}}},{\"resourceName\":\"underlayvpn\",\"resourceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561513\",\"resourceId\":\"60c3e96e-0970-4871-b6e0-3b6de7561514\",\"nsParameters\":{\"locationConstraints\":[],\"additionalParamForNs\":{\"externalDataNetworkName\":\"Flow_out_net\",\"m6000_mng_ip\":\"181.18.20.2\",\"externalCompanyFtpDataNetworkName\":\"Flow_out_net\",\"externalPluginManageNetworkName\":\"plugin_net_2014\",\"externalManageNetworkName\":\"mng_net_2017\",\"sfc_data_network\":\"sfc_data_net_2016\",\"NatIpRange\":\"210.1.1.10-210.1.1.20\",\"location\":\"4050083f-465f-4838-af1e-47a545222ad0\",\"sdncontroller\":\"9b9f02c0-298b-458a-bc9c-be3692e4f35e\"}}},{\"resourceName\":\"overlayvpn\",\"resourceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561517\",\"resourceId\":\"60c3e96e-0970-4871-b6e0-3b6de7561518\",\"nsParameters\":{\"locationConstraints\":[],\"additionalParamForNs\":{\"externalDataNetworkName\":\"Flow_out_net\",\"m6000_mng_ip\":\"181.18.20.2\",\"externalCompanyFtpDataNetworkName\":\"Flow_out_net\",\"externalPluginManageNetworkName\":\"plugin_net_2014\",\"externalManageNetworkName\":\"mng_net_2017\",\"sfc_data_network\":\"sfc_data_net_2016\",\"NatIpRange\":\"210.1.1.10-210.1.1.20\",\"location\":\"4050083f-465f-4838-af1e-47a545222ad0\",\"sdncontroller\":\"9b9f02c0-298b-458a-bc9c-be3692e4f35e\"}}}]}}}";\r
+ Response resp = instance.updateE2EServiceInstance(request, "v3", "12345");\r
+ String respStr = resp.getEntity().toString();\r
+ assertTrue(respStr.indexOf("success") != -1);\r
+ }\r
+ \r
+ @Test\r
+ public void updateE2EServiceInstanceTestChkStatusFalse() {\r
+ new MockUp<RequestsDatabase>() {\r
+ @Mock\r
+ public OperationStatus getOperationStatusByServiceId(\r
+ String serviceID) {\r
+ OperationStatus operationStatus = new OperationStatus();\r
+ return operationStatus;\r
+ }\r
+ };\r
+ new MockUp<E2EServiceInstances>() {\r
+ @Mock\r
+ private void createOperationStatusRecordForError(Action action,\r
+ String requestId) throws MsoDatabaseException {\r
+\r
+ }\r
+ };\r
+ new MockUp<CatalogDatabase>() {\r
+ @Mock\r
+ public Service getServiceByModelName(String modelName) {\r
+ Service svc = new Service();\r
+ return svc;\r
+ }\r
+ };\r
+\r
+ new MockUp<CatalogDatabase>() {\r
+ @Mock\r
+ public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID,\r
+ String action) {\r
+ ServiceRecipe rec = new ServiceRecipe();\r
+ return rec;\r
+ }\r
+ };\r
+\r
+ new MockUp<RequestClientFactory>() {\r
+ @Mock\r
+ public RequestClient getRequestClient(String orchestrationURI,\r
+ MsoJavaProperties props) throws IllegalStateException {\r
+ RequestClient client = new CamundaClient();\r
+ client.setUrl("/test/url");\r
+ return client;\r
+ }\r
+ };\r
+\r
+ new MockUp<CamundaClient>() {\r
+ @Mock\r
+ public HttpResponse post(String requestId, boolean isBaseVfModule,\r
+ int recipeTimeout, String requestAction,\r
+ String serviceInstanceId, String vnfId, String vfModuleId,\r
+ String volumeGroupId, String networkId, String serviceType,\r
+ String vnfType, String vfModuleType, String networkType,\r
+ String requestDetails, String recipeParamXsd) {\r
+ ProtocolVersion pv = new ProtocolVersion("HTTP", 1, 1);\r
+ HttpResponse resp = new BasicHttpResponse(pv, 202,\r
+ "test response");\r
+ BasicHttpEntity entity = new BasicHttpEntity();\r
+ String body = "{\"response\":\"success\",\"message\":\"success\"}";\r
+ InputStream instream = new ByteArrayInputStream(body.getBytes());\r
+ entity.setContent(instream);\r
+ resp.setEntity(entity);\r
+ return resp;\r
+ }\r
+ };\r
+\r
+ E2EServiceInstances instance = new E2EServiceInstances();\r
+ String request = "{\"service\":{\"name\":\"so_test4\",\"description\":\"so_test2\",\"serviceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561519\",\"templateId\":\"592f9437-a9c0-4303-b9f6-c445bb7e9814\",\"parameters\":{\"globalSubscriberId\":\"123457\",\"subscriberName\":\"Customer1\",\"serviceType\":\"voLTE\",\"templateName\":\"voLTE Service:1.0\",\"resources\":[{\"resourceName\":\"vIMS\",\"resourceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561516\",\"resourceId\":\"60c3e96e-0970-4871-b6e0-3b6de7561512\",\"nsParameters\":{\"locationConstraints\":[{\"vnfProfileId\":\"zte-vBAS-1.0\",\"locationConstraints\":{\"vimId\":\"4050083f-465f-4838-af1e-47a545222ad0\"}},{\"vnfProfileId\":\"zte-vMME-1.0\",\"locationConstraints\":{\"vimId\":\"4050083f-465f-4838-af1e-47a545222ad0\"}}],\"additionalParamForNs\":{}}},{\"resourceName\":\"vEPC\",\"resourceDefId\":\"61c3e96e-0970-4871-b6e0-3b6de7561516\",\"resourceId\":\"62c3e96e-0970-4871-b6e0-3b6de7561512\",\"nsParameters\":{\"locationConstraints\":[{\"vnfProfileId\":\"zte-CSCF-1.0\",\"locationConstraints\":{\"vimId\":\"4050083f-465f-4838-af1e-47a545222ad1\"}}],\"additionalParamForNs\":{}}},{\"resourceName\":\"underlayvpn\",\"resourceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561513\",\"resourceId\":\"60c3e96e-0970-4871-b6e0-3b6de7561514\",\"nsParameters\":{\"locationConstraints\":[],\"additionalParamForNs\":{\"externalDataNetworkName\":\"Flow_out_net\",\"m6000_mng_ip\":\"181.18.20.2\",\"externalCompanyFtpDataNetworkName\":\"Flow_out_net\",\"externalPluginManageNetworkName\":\"plugin_net_2014\",\"externalManageNetworkName\":\"mng_net_2017\",\"sfc_data_network\":\"sfc_data_net_2016\",\"NatIpRange\":\"210.1.1.10-210.1.1.20\",\"location\":\"4050083f-465f-4838-af1e-47a545222ad0\",\"sdncontroller\":\"9b9f02c0-298b-458a-bc9c-be3692e4f35e\"}}},{\"resourceName\":\"overlayvpn\",\"resourceDefId\":\"60c3e96e-0970-4871-b6e0-3b6de7561517\",\"resourceId\":\"60c3e96e-0970-4871-b6e0-3b6de7561518\",\"nsParameters\":{\"locationConstraints\":[],\"additionalParamForNs\":{\"externalDataNetworkName\":\"Flow_out_net\",\"m6000_mng_ip\":\"181.18.20.2\",\"externalCompanyFtpDataNetworkName\":\"Flow_out_net\",\"externalPluginManageNetworkName\":\"plugin_net_2014\",\"externalManageNetworkName\":\"mng_net_2017\",\"sfc_data_network\":\"sfc_data_net_2016\",\"NatIpRange\":\"210.1.1.10-210.1.1.20\",\"location\":\"4050083f-465f-4838-af1e-47a545222ad0\",\"sdncontroller\":\"9b9f02c0-298b-458a-bc9c-be3692e4f35e\"}}}]}}}";\r
+ Response resp = instance.updateE2EServiceInstance(request, "v3", "12345");\r
+ String respStr = resp.getEntity().toString();\r
+ assertTrue(respStr.indexOf("SVC2000") != -1);\r
+ }\r
}\r