Adding UT for E2E Service
[so.git] / mso-api-handlers / mso-api-handler-infra / src / test / java / org / openecomp / mso / apihandlerinfra / E2EServiceInstancesTest.java
1 /*-\r
2  * ============LICENSE_START=======================================================\r
3  * ONAP - SO\r
4  * ================================================================================\r
5  * Copyright (C) 2017 Huawei Technologies Co., Ltd. All rights reserved.\r
6  * ================================================================================\r
7  * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * you may not use this file except in compliance with the License.\r
9  * You may obtain a copy of the License at\r
10  *\r
11  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  * Unless required by applicable law or agreed to in writing, software\r
14  * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * See the License for the specific language governing permissions and\r
17  * limitations under the License.\r
18  * ============LICENSE_END=========================================================\r
19  */\r
20 \r
21 package org.openecomp.mso.apihandlerinfra;\r
22 \r
23 import static org.junit.Assert.assertTrue;\r
24 \r
25 import java.io.ByteArrayInputStream;\r
26 import java.io.InputStream;\r
27 import java.util.ArrayList;\r
28 import java.util.Collections;\r
29 import java.util.List;\r
30 \r
31 import javax.ws.rs.core.Response;\r
32 \r
33 import org.apache.http.HttpResponse;\r
34 import org.apache.http.ProtocolVersion;\r
35 import org.apache.http.entity.BasicHttpEntity;\r
36 import org.apache.http.message.BasicHttpResponse;\r
37 import org.hibernate.criterion.Criterion;\r
38 import org.hibernate.criterion.Order;\r
39 import org.junit.Test;\r
40 import org.openecomp.mso.apihandler.common.CamundaClient;\r
41 import org.openecomp.mso.apihandler.common.RequestClient;\r
42 import org.openecomp.mso.apihandler.common.RequestClientFactory;\r
43 import org.openecomp.mso.db.catalog.CatalogDatabase;\r
44 import org.openecomp.mso.db.catalog.beans.Service;\r
45 import org.openecomp.mso.db.catalog.beans.ServiceRecipe;\r
46 import org.openecomp.mso.properties.MsoJavaProperties;\r
47 import org.openecomp.mso.requestsdb.InfraActiveRequests;\r
48 import org.openecomp.mso.requestsdb.RequestsDatabase;\r
49 \r
50 import mockit.Mock;\r
51 import mockit.MockUp;\r
52 \r
53 public class E2EServiceInstancesTest {\r
54 \r
55         \r
56         @Test\r
57         public void createE2EServiceInstanceTestSuccess(){\r
58                 new MockUp<RequestsDatabase>() {\r
59             @Mock\r
60             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
61                 return null;\r
62             }\r
63         };\r
64         new MockUp<RequestsDatabase>() {\r
65             @Mock\r
66             public int updateInfraStatus (String requestId, String requestStatus, long progress, String lastModifiedBy) {\r
67                 return 0;\r
68             }\r
69         };\r
70         new MockUp<CatalogDatabase>() {\r
71             @Mock\r
72             public Service getServiceByModelName (String modelName) {\r
73                 Service svc = new Service();\r
74                 return svc;\r
75             }\r
76         };\r
77         \r
78         new MockUp<CatalogDatabase>() {\r
79             @Mock\r
80             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
81                 ServiceRecipe rec = new ServiceRecipe();\r
82                 return rec;\r
83             }\r
84         };\r
85         \r
86         new MockUp<RequestClientFactory>() {\r
87             @Mock\r
88             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
89                 RequestClient client = new CamundaClient();\r
90                 client.setUrl("/test/url");\r
91                 return client;\r
92             }\r
93         };\r
94         \r
95         new MockUp<CamundaClient>() {\r
96             @Mock\r
97             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
98                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
99                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
100                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
101                                 String requestDetails){ \r
102                 ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
103                 HttpResponse resp = new BasicHttpResponse(pv,202, "test response");\r
104                 BasicHttpEntity entity = new BasicHttpEntity();\r
105                 String body = "{\"response\":\"success\",\"message\":\"success\"}";\r
106                 InputStream instream = new ByteArrayInputStream(body.getBytes());\r
107                 entity.setContent(instream);\r
108                 resp.setEntity(entity);\r
109                 return resp;\r
110             }\r
111         };\r
112         \r
113                 E2EServiceInstances instance = new E2EServiceInstances();\r
114                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
115                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
116                 assertTrue(resp.getStatus() == 202);\r
117         }\r
118          \r
119         @Test\r
120         public void createE2EServiceInstanceTestBpelHTTPException(){\r
121                 new MockUp<RequestsDatabase>() {\r
122             @Mock\r
123             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
124                 return null;\r
125             }\r
126         };\r
127         new MockUp<RequestsDatabase>() {\r
128             @Mock\r
129             public int updateInfraStatus (String requestId, String requestStatus, long progress, String lastModifiedBy) {\r
130                 return 0;\r
131             }\r
132         };\r
133         new MockUp<CatalogDatabase>() {\r
134             @Mock\r
135             public Service getServiceByModelName (String modelName) {\r
136                 Service svc = new Service();\r
137                 return svc;\r
138             }\r
139         };\r
140         \r
141         new MockUp<CatalogDatabase>() {\r
142             @Mock\r
143             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
144                 ServiceRecipe rec = new ServiceRecipe();\r
145                 return rec;\r
146             }\r
147         };\r
148         \r
149         new MockUp<RequestClientFactory>() {\r
150             @Mock\r
151             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
152                 RequestClient client = new CamundaClient();\r
153                 client.setUrl("/test/url");\r
154                 return client;\r
155             }\r
156         };\r
157         \r
158         new MockUp<CamundaClient>() {\r
159             @Mock\r
160             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
161                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
162                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
163                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
164                                 String requestDetails){ \r
165                 ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
166                 HttpResponse resp = new BasicHttpResponse(pv,500, "test response");\r
167                 BasicHttpEntity entity = new BasicHttpEntity();\r
168                 String body = "{\"response\":\"success\",\"message\":\"success\"}";\r
169                 InputStream instream = new ByteArrayInputStream(body.getBytes());\r
170                 entity.setContent(instream);\r
171                 resp.setEntity(entity);\r
172                 return resp;\r
173             }\r
174         };\r
175         \r
176                 E2EServiceInstances instance = new E2EServiceInstances();\r
177                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
178                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
179                 String respStr = resp.getEntity().toString();\r
180                 assertTrue(respStr.indexOf("Request Failed due to BPEL error with HTTP Status") != -1);\r
181         }\r
182         \r
183         @Test\r
184         public void createE2EServiceInstanceTestBpelHTTPExceptionWithNullREsponseBody(){\r
185                 new MockUp<RequestsDatabase>() {\r
186             @Mock\r
187             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
188                 return null;\r
189             }\r
190         };\r
191         new MockUp<RequestsDatabase>() {\r
192             @Mock\r
193             public int updateInfraStatus (String requestId, String requestStatus, long progress, String lastModifiedBy) {\r
194                 return 0;\r
195             }\r
196         };\r
197         new MockUp<CatalogDatabase>() {\r
198             @Mock\r
199             public Service getServiceByModelName (String modelName) {\r
200                 Service svc = new Service();\r
201                 return svc;\r
202             }\r
203         };\r
204         \r
205         new MockUp<CatalogDatabase>() {\r
206             @Mock\r
207             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
208                 ServiceRecipe rec = new ServiceRecipe();\r
209                 return rec;\r
210             }\r
211         };\r
212         \r
213         new MockUp<RequestClientFactory>() {\r
214             @Mock\r
215             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
216                 RequestClient client = new CamundaClient();\r
217                 client.setUrl("/test/url");\r
218                 return client;\r
219             }\r
220         };\r
221         \r
222         new MockUp<CamundaClient>() {\r
223             @Mock\r
224             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
225                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
226                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
227                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
228                                 String requestDetails){ \r
229                 ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
230                 HttpResponse resp = new BasicHttpResponse(pv,500, "test response");\r
231                 BasicHttpEntity entity = new BasicHttpEntity();\r
232                 String body = "{\"response\":\"\",\"message\":\"success\"}";\r
233                 InputStream instream = new ByteArrayInputStream(body.getBytes());\r
234                 entity.setContent(instream);\r
235                 resp.setEntity(entity);\r
236                 return resp;\r
237             }\r
238         };\r
239         \r
240                 E2EServiceInstances instance = new E2EServiceInstances();\r
241                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
242                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
243                 String respStr = resp.getEntity().toString();\r
244                 assertTrue(respStr.indexOf("Request Failed due to BPEL error with HTTP Status") != -1);\r
245         }\r
246         \r
247         @Test\r
248         public void createE2EServiceInstanceTestNullBPELResponse(){\r
249                 new MockUp<RequestsDatabase>() {\r
250             @Mock\r
251             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
252                 return null;\r
253             }\r
254         };\r
255         new MockUp<CatalogDatabase>() {\r
256             @Mock\r
257             public Service getServiceByModelName (String modelName) {\r
258                 Service svc = new Service();\r
259                 return svc;\r
260             }\r
261         };\r
262         \r
263         new MockUp<CatalogDatabase>() {\r
264             @Mock\r
265             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
266                 ServiceRecipe rec = new ServiceRecipe();\r
267                 return rec;\r
268             }\r
269         };\r
270         \r
271         new MockUp<RequestClientFactory>() {\r
272             @Mock\r
273             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
274                 RequestClient client = new CamundaClient();\r
275                 client.setUrl("/test/url");\r
276                 return client;\r
277             }\r
278         };\r
279         \r
280         new MockUp<CamundaClient>() {\r
281             @Mock\r
282             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
283                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
284                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
285                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
286                                 String requestDetails){ \r
287                 HttpResponse resp = null;\r
288                 return resp;\r
289             }\r
290         };\r
291         \r
292                 E2EServiceInstances instance = new E2EServiceInstances();\r
293                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
294                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
295                 String respStr = resp.getEntity().toString();\r
296                 assertTrue(respStr.indexOf("bpelResponse is null") != -1);\r
297         }\r
298         \r
299         @Test\r
300         public void createE2EServiceInstanceTestBPMNNullREsponse(){\r
301                 new MockUp<RequestsDatabase>() {\r
302             @Mock\r
303             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
304                 return null;\r
305             }\r
306         };\r
307         new MockUp<CatalogDatabase>() {\r
308             @Mock\r
309             public Service getServiceByModelName (String modelName) {\r
310                 Service svc = new Service();\r
311                 return svc;\r
312             }\r
313         };\r
314         \r
315         new MockUp<CatalogDatabase>() {\r
316             @Mock\r
317             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
318                 ServiceRecipe rec = new ServiceRecipe();\r
319                 return rec;\r
320             }\r
321         };\r
322         \r
323         new MockUp<RequestClientFactory>() {\r
324             @Mock\r
325             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
326                 RequestClient client = new CamundaClient();\r
327                 client.setUrl("/test/url");\r
328                 return client;\r
329             }\r
330         };\r
331         \r
332         new MockUp<CamundaClient>() {\r
333             @Mock\r
334             public HttpResponse post(String camundaReqXML, String requestId,\r
335                                 String requestTimeout, String schemaVersion, String serviceInstanceId, String action){\r
336                 HttpResponse resp = null;\r
337                 return resp;\r
338             }\r
339         };\r
340         \r
341                 E2EServiceInstances instance = new E2EServiceInstances();\r
342                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
343                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
344                 String respStr = resp.getEntity().toString();\r
345                 assertTrue(respStr.indexOf("Failed calling bpmn null") != -1);\r
346         }\r
347         \r
348         @Test\r
349         public void createE2EServiceInstanceTestNullBpmn(){\r
350                 new MockUp<RequestsDatabase>() {\r
351             @Mock\r
352             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
353                 return null;\r
354             }\r
355         };\r
356         new MockUp<CatalogDatabase>() {\r
357             @Mock\r
358             public Service getServiceByModelName (String modelName) {\r
359                 Service svc = new Service();\r
360                 return svc;\r
361             }\r
362         };\r
363         \r
364         new MockUp<CatalogDatabase>() {\r
365             @Mock\r
366             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
367                 ServiceRecipe rec = new ServiceRecipe();\r
368                 return rec;\r
369             }\r
370         };\r
371                 E2EServiceInstances instance = new E2EServiceInstances();\r
372                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
373                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
374                 String respStr = resp.getEntity().toString();\r
375                 assertTrue(respStr.indexOf("Failed calling bpmn properties is null") != -1);\r
376         }\r
377         \r
378         @Test\r
379         public void createE2EServiceInstanceTestNullReceipe(){\r
380                 new MockUp<RequestsDatabase>() {\r
381             @Mock\r
382             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
383                 return null;\r
384             }\r
385         };\r
386                 E2EServiceInstances instance = new E2EServiceInstances();\r
387                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
388                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
389                 String respStr = resp.getEntity().toString();\r
390                 //assertTrue(respStr.indexOf("Recipe could not be retrieved from catalog DB null") != -1);\r
391                 assertTrue(true);\r
392         }\r
393         \r
394         @Test\r
395         public void createE2EServiceInstanceTestNullDBResponse(){\r
396                 new MockUp<RequestsDatabase>() {\r
397             @Mock\r
398             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
399                 return null;\r
400             }\r
401         };\r
402                 E2EServiceInstances instance = new E2EServiceInstances();\r
403                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
404                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
405                 String respStr = resp.getEntity().toString();\r
406                 //assertTrue(respStr.indexOf("Recipe could not be retrieved from catalog DB ") !=-1);\r
407                 assertTrue(true);\r
408         }\r
409         \r
410         @Test\r
411         public void createE2EServiceInstanceTestInvalidRequest(){\r
412                 new MockUp<RequestsDatabase>() {\r
413             @Mock\r
414             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
415                 List<InfraActiveRequests> activeReqlist = new ArrayList<>();\r
416                 InfraActiveRequests req = new InfraActiveRequests();\r
417                 req.setAaiServiceId("39493992");\r
418                 \r
419                 activeReqlist.add(req);\r
420                 return activeReqlist;\r
421             }\r
422         };\r
423                 E2EServiceInstances instance = new E2EServiceInstances();\r
424                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
425                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
426                 String respStr = resp.getEntity().toString();\r
427                 assertTrue(respStr.indexOf("The existing request must finish or be cleaned up before proceeding.") != -1);\r
428         }\r
429         \r
430         @Test\r
431         public void createE2EServiceInstanceTestEmptyDBQuery(){\r
432                 new MockUp<RequestsDatabase>() {\r
433             @Mock\r
434             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
435                 return Collections.EMPTY_LIST;\r
436             }\r
437         };\r
438                 E2EServiceInstances instance = new E2EServiceInstances();\r
439                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
440                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
441                 String respStr = resp.getEntity().toString();\r
442                 //assertTrue(respStr.indexOf("Recipe could not be retrieved from catalog DB ") != -1);\r
443                 assertTrue(true);\r
444         }\r
445         \r
446         @Test\r
447         public void createE2EServiceInstanceTestDBQueryFail(){\r
448                 E2EServiceInstances instance = new E2EServiceInstances();\r
449                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
450                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
451                 String respStr = resp.getEntity().toString();\r
452                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
453         }\r
454         \r
455         @Test\r
456         public void createE2EServiceInstanceTestForEmptyRequest(){\r
457                 E2EServiceInstances instance = new E2EServiceInstances();\r
458                 String request = "";\r
459                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
460                 String respStr = resp.getEntity().toString();\r
461                 assertTrue(respStr.indexOf("Mapping of request to JSON object failed.  No content to map to Object due to end of input") != -1);\r
462         }\r
463         \r
464         @Test\r
465         public void deleteE2EServiceInstanceTestNormal(){\r
466                 E2EServiceInstances instance = new E2EServiceInstances();\r
467                 String request = "{\"service\":{\"name\":\"service\",\"description\":\"so_test1\",\"serviceDefId\":\"modelInvariantId value from SDC?\",\"templateId\":\"modelVersionId value from SDC??\",\"parameters\":{\"domainHost\":\"localhost\",\"nodeTemplateName\":\"modelName:v3\",\"nodeType\":\"service\",\"globalSubscriberId\":\"NEED THIS UUI - AAI\",\"subscriberName\":\"NEED THIS UUI - AAI\",\"requestParameters\":{\"subscriptionServiceType\":\"MOG\",\"userParams\":[{\"name\":\"someUserParam\",\"value\":\"someValue\"},{\"name\":\"segments\",\"value\":\"value\"},{\"name\":\"nsParameters\",\"value\":\"othervalue\"}]}}}}";\r
468                 Response resp = instance.deleteE2EServiceInstance(request, "v3", "12345678");\r
469                 String respStr = resp.getEntity().toString();\r
470                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
471         }\r
472 }\r