Add test cases 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                 System.out.println(instance);\r
115                 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
116                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
117                 assertTrue(resp.getStatus() == 202);\r
118         }\r
119          \r
120         @Test\r
121         public void createE2EServiceInstanceTestBpelHTTPException(){\r
122                 new MockUp<RequestsDatabase>() {\r
123             @Mock\r
124             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
125                 return null;\r
126             }\r
127         };\r
128         new MockUp<RequestsDatabase>() {\r
129             @Mock\r
130             public int updateInfraStatus (String requestId, String requestStatus, long progress, String lastModifiedBy) {\r
131                 return 0;\r
132             }\r
133         };\r
134         new MockUp<CatalogDatabase>() {\r
135             @Mock\r
136             public Service getServiceByModelName (String modelName) {\r
137                 Service svc = new Service();\r
138                 return svc;\r
139             }\r
140         };\r
141         \r
142         new MockUp<CatalogDatabase>() {\r
143             @Mock\r
144             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
145                 ServiceRecipe rec = new ServiceRecipe();\r
146                 return rec;\r
147             }\r
148         };\r
149         \r
150         new MockUp<RequestClientFactory>() {\r
151             @Mock\r
152             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
153                 RequestClient client = new CamundaClient();\r
154                 client.setUrl("/test/url");\r
155                 return client;\r
156             }\r
157         };\r
158         \r
159         new MockUp<CamundaClient>() {\r
160             @Mock\r
161             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
162                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
163                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
164                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
165                                 String requestDetails){ \r
166                 ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
167                 HttpResponse resp = new BasicHttpResponse(pv,500, "test response");\r
168                 BasicHttpEntity entity = new BasicHttpEntity();\r
169                 String body = "{\"response\":\"success\",\"message\":\"success\"}";\r
170                 InputStream instream = new ByteArrayInputStream(body.getBytes());\r
171                 entity.setContent(instream);\r
172                 resp.setEntity(entity);\r
173                 return resp;\r
174             }\r
175         };\r
176         \r
177                 E2EServiceInstances instance = new E2EServiceInstances();\r
178                 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
179                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
180                 String respStr = resp.getEntity().toString();\r
181                 assertTrue(respStr.indexOf("Request Failed due to BPEL error with HTTP Status") != -1);\r
182         }\r
183         \r
184         @Test\r
185         public void createE2EServiceInstanceTestBpelHTTPExceptionWithNullREsponseBody(){\r
186                 new MockUp<RequestsDatabase>() {\r
187             @Mock\r
188             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
189                 return null;\r
190             }\r
191         };\r
192         new MockUp<RequestsDatabase>() {\r
193             @Mock\r
194             public int updateInfraStatus (String requestId, String requestStatus, long progress, String lastModifiedBy) {\r
195                 return 0;\r
196             }\r
197         };\r
198         new MockUp<CatalogDatabase>() {\r
199             @Mock\r
200             public Service getServiceByModelName (String modelName) {\r
201                 Service svc = new Service();\r
202                 return svc;\r
203             }\r
204         };\r
205         \r
206         new MockUp<CatalogDatabase>() {\r
207             @Mock\r
208             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
209                 ServiceRecipe rec = new ServiceRecipe();\r
210                 return rec;\r
211             }\r
212         };\r
213         \r
214         new MockUp<RequestClientFactory>() {\r
215             @Mock\r
216             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
217                 RequestClient client = new CamundaClient();\r
218                 client.setUrl("/test/url");\r
219                 return client;\r
220             }\r
221         };\r
222         \r
223         new MockUp<CamundaClient>() {\r
224             @Mock\r
225             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
226                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
227                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
228                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
229                                 String requestDetails){ \r
230                 ProtocolVersion pv = new ProtocolVersion("HTTP",1,1);\r
231                 HttpResponse resp = new BasicHttpResponse(pv,500, "test response");\r
232                 BasicHttpEntity entity = new BasicHttpEntity();\r
233                 String body = "{\"response\":\"\",\"message\":\"success\"}";\r
234                 InputStream instream = new ByteArrayInputStream(body.getBytes());\r
235                 entity.setContent(instream);\r
236                 resp.setEntity(entity);\r
237                 return resp;\r
238             }\r
239         };\r
240         \r
241                 E2EServiceInstances instance = new E2EServiceInstances();\r
242                 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
243                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
244                 String respStr = resp.getEntity().toString();\r
245                 assertTrue(respStr.indexOf("Request Failed due to BPEL error with HTTP Status") != -1);\r
246         }\r
247         \r
248         @Test\r
249         public void createE2EServiceInstanceTestNullBPELResponse(){\r
250                 new MockUp<RequestsDatabase>() {\r
251             @Mock\r
252             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
253                 return null;\r
254             }\r
255         };\r
256         new MockUp<CatalogDatabase>() {\r
257             @Mock\r
258             public Service getServiceByModelName (String modelName) {\r
259                 Service svc = new Service();\r
260                 return svc;\r
261             }\r
262         };\r
263         \r
264         new MockUp<CatalogDatabase>() {\r
265             @Mock\r
266             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
267                 ServiceRecipe rec = new ServiceRecipe();\r
268                 return rec;\r
269             }\r
270         };\r
271         \r
272         new MockUp<RequestClientFactory>() {\r
273             @Mock\r
274             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
275                 RequestClient client = new CamundaClient();\r
276                 client.setUrl("/test/url");\r
277                 return client;\r
278             }\r
279         };\r
280         \r
281         new MockUp<CamundaClient>() {\r
282             @Mock\r
283             public HttpResponse post(String requestId, boolean isBaseVfModule,\r
284                                 int recipeTimeout, String requestAction, String serviceInstanceId,\r
285                                 String vnfId, String vfModuleId, String volumeGroupId, String networkId,\r
286                                 String serviceType, String vnfType, String vfModuleType, String networkType,\r
287                                 String requestDetails){ \r
288                 HttpResponse resp = null;\r
289                 return resp;\r
290             }\r
291         };\r
292         \r
293                 E2EServiceInstances instance = new E2EServiceInstances();\r
294                 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
295                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
296                 String respStr = resp.getEntity().toString();\r
297                 assertTrue(respStr.indexOf("bpelResponse is null") != -1);\r
298         }\r
299         \r
300         @Test\r
301         public void createE2EServiceInstanceTestBPMNNullREsponse(){\r
302                 new MockUp<RequestsDatabase>() {\r
303             @Mock\r
304             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
305                 return null;\r
306             }\r
307         };\r
308         new MockUp<CatalogDatabase>() {\r
309             @Mock\r
310             public Service getServiceByModelName (String modelName) {\r
311                 Service svc = new Service();\r
312                 return svc;\r
313             }\r
314         };\r
315         \r
316         new MockUp<CatalogDatabase>() {\r
317             @Mock\r
318             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
319                 ServiceRecipe rec = new ServiceRecipe();\r
320                 return rec;\r
321             }\r
322         };\r
323         \r
324         new MockUp<RequestClientFactory>() {\r
325             @Mock\r
326             public RequestClient getRequestClient(String orchestrationURI, MsoJavaProperties props) throws IllegalStateException{\r
327                 RequestClient client = new CamundaClient();\r
328                 client.setUrl("/test/url");\r
329                 return client;\r
330             }\r
331         };\r
332         \r
333         new MockUp<CamundaClient>() {\r
334             @Mock\r
335             public HttpResponse post(String camundaReqXML, String requestId,\r
336                                 String requestTimeout, String schemaVersion, String serviceInstanceId, String action){\r
337                 HttpResponse resp = null;\r
338                 return resp;\r
339             }\r
340         };\r
341         \r
342                 E2EServiceInstances instance = new E2EServiceInstances();\r
343                 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
344                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
345                 String respStr = resp.getEntity().toString();\r
346                 assertTrue(respStr.indexOf("Failed calling bpmn null") != -1);\r
347         }\r
348         \r
349         @Test\r
350         public void createE2EServiceInstanceTestNullBpmn(){\r
351                 new MockUp<RequestsDatabase>() {\r
352             @Mock\r
353             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
354                 return null;\r
355             }\r
356         };\r
357         new MockUp<CatalogDatabase>() {\r
358             @Mock\r
359             public Service getServiceByModelName (String modelName) {\r
360                 Service svc = new Service();\r
361                 return svc;\r
362             }\r
363         };\r
364         \r
365         new MockUp<CatalogDatabase>() {\r
366             @Mock\r
367             public ServiceRecipe getServiceRecipeByModelUUID(String modelUUID, String action) {\r
368                 ServiceRecipe rec = new ServiceRecipe();\r
369                 return rec;\r
370             }\r
371         };\r
372                 E2EServiceInstances instance = new E2EServiceInstances();\r
373                 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
374                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
375                 String respStr = resp.getEntity().toString();\r
376                 assertTrue(respStr.indexOf("Failed calling bpmn properties is null") != -1);\r
377         }\r
378         \r
379         @Test\r
380         public void createE2EServiceInstanceTestNullReceipe(){\r
381                 new MockUp<RequestsDatabase>() {\r
382             @Mock\r
383             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
384                 return null;\r
385             }\r
386         };\r
387                 E2EServiceInstances instance = new E2EServiceInstances();\r
388                 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
389                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
390                 String respStr = resp.getEntity().toString();\r
391                 assertTrue(respStr.indexOf("Recipe could not be retrieved from catalog DB null") != -1);\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         }\r
408         \r
409         @Test\r
410         public void createE2EServiceInstanceTestInvalidRequest(){\r
411                 new MockUp<RequestsDatabase>() {\r
412             @Mock\r
413             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
414                 List<InfraActiveRequests> activeReqlist = new ArrayList<>();\r
415                 InfraActiveRequests req = new InfraActiveRequests();\r
416                 req.setAaiServiceId("39493992");\r
417                 \r
418                 activeReqlist.add(req);\r
419                 return activeReqlist;\r
420             }\r
421         };\r
422                 E2EServiceInstances instance = new E2EServiceInstances();\r
423                 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
424                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
425                 String respStr = resp.getEntity().toString();\r
426                 assertTrue(respStr.indexOf("The existing request must finish or be cleaned up before proceeding.") != -1);\r
427         }\r
428         \r
429         @Test\r
430         public void createE2EServiceInstanceTestEmptyDBQuery(){\r
431                 new MockUp<RequestsDatabase>() {\r
432             @Mock\r
433             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
434                 return Collections.EMPTY_LIST;\r
435             }\r
436         };\r
437                 E2EServiceInstances instance = new E2EServiceInstances();\r
438                 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
439                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
440                 String respStr = resp.getEntity().toString();\r
441                 assertTrue(respStr.indexOf("Recipe could not be retrieved from catalog DB ") != -1);\r
442         }\r
443         \r
444         @Test\r
445         public void createE2EServiceInstanceTestDBQueryFail(){\r
446                 E2EServiceInstances instance = new E2EServiceInstances();\r
447                 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
448                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
449                 String respStr = resp.getEntity().toString();\r
450                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
451         }\r
452         \r
453         @Test\r
454         public void createE2EServiceInstanceTestForEmptyRequest(){\r
455                 E2EServiceInstances instance = new E2EServiceInstances();\r
456                 String request = "";\r
457                 Response resp = instance.createE2EServiceInstance(request, "v3");\r
458                 String respStr = resp.getEntity().toString();\r
459                 assertTrue(respStr.indexOf("Mapping of request to JSON object failed.  No content to map to Object due to end of input") != -1);\r
460         }\r
461         \r
462         @Test\r
463         public void deleteE2EServiceInstanceTestNormal(){\r
464                 E2EServiceInstances instance = new E2EServiceInstances();\r
465                 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
466                 Response resp = instance.deleteE2EServiceInstance(request, "v3", "12345678");\r
467                 String respStr = resp.getEntity().toString();\r
468                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
469         }\r
470 }\r