ee789a60caf263bde4765028f274bda90576c8e8
[so.git] /
1 package org.openecomp.mso.apihandlerinfra;\r
2 \r
3 \r
4 import org.hibernate.criterion.Criterion;\r
5 import org.hibernate.criterion.Order;\r
6 import org.junit.Test;\r
7 \r
8 import javax.ws.rs.core.Response;\r
9 \r
10 import static org.junit.Assert.assertFalse;\r
11 import static org.junit.Assert.assertTrue;\r
12 import static org.junit.Assert.fail;\r
13 \r
14 import java.util.Collections;\r
15 import java.util.List;\r
16 \r
17 import org.openecomp.mso.requestsdb.InfraActiveRequests;\r
18 import org.openecomp.mso.requestsdb.RequestsDatabase;\r
19 \r
20 import mockit.Mock;\r
21 import mockit.MockUp;\r
22 \r
23 public class ServiceInstanceTest {\r
24 \r
25         /*** Create Service Instance Test Cases ***/\r
26         \r
27         @Test\r
28         public void createServiceInstanceInvalidModelInfo(){\r
29                 ServiceInstances instance = new ServiceInstances();\r
30                 String requestJson = "{\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"}}}";\r
31                 Response resp = instance.createServiceInstance(requestJson, "v5");\r
32                 String respBody = resp.getEntity().toString();\r
33                 assertTrue(respBody.indexOf("Error parsing request.  No valid model-info is specified") != -1);\r
34         }\r
35         \r
36         @Test\r
37         public void createServiceInstanceNormalNullDBFatch(){\r
38                 new MockUp<RequestsDatabase>() {\r
39             @Mock\r
40             private List<InfraActiveRequests> executeInfraQuery (List <Criterion> criteria, Order order) {\r
41                 return Collections.EMPTY_LIST;\r
42             }\r
43         };\r
44                 ServiceInstances instance = new ServiceInstances();\r
45                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
46                                 +"\"vnfInstanceId\":\"1882938\","\r
47                                 +"\"networkInstanceId\":\"1882937\","\r
48                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
49                                 +"\"vfModuleInstanceId\":\"1882934\","\r
50                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
51                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
52                 String respBody = resp.getEntity().toString();\r
53                 assertTrue(respBody.indexOf("Recipe could not be retrieved from catalog DB null") != -1);\r
54         }\r
55         \r
56         \r
57         @Test\r
58         public void createServiceInstanceInvalidModelVersionId(){\r
59                 ServiceInstances instance = new ServiceInstances();\r
60                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
61                                 +"\"vnfInstanceId\":\"1882938\","\r
62                                 +"\"networkInstanceId\":\"1882937\","\r
63                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
64                                 +"\"vfModuleInstanceId\":\"1882934\","\r
65                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
66                 Response resp = instance.createServiceInstance(requestJson, "v5");\r
67                 String respBody = resp.getEntity().toString();\r
68                 assertTrue(respBody.indexOf("Error parsing request.  No valid modelVersionId is specified") != -1);\r
69         }\r
70         \r
71         @Test\r
72         public void createServiceInstanceNullInstanceName(){\r
73                 ServiceInstances instance = new ServiceInstances();\r
74                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
75                                 +"\"vnfInstanceId\":\"1882938\","\r
76                                 +"\"networkInstanceId\":\"1882937\","\r
77                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
78                                 +"\"vfModuleInstanceId\":\"1882934\","\r
79                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
80                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
81                 String respBody = resp.getEntity().toString();\r
82                 assertTrue(respBody.indexOf("Error parsing request.  No valid instanceName is specified") != -1);\r
83         }\r
84         \r
85         \r
86         @Test\r
87         public void createServiceInstanceNullModelInfo(){\r
88                 ServiceInstances instance = new ServiceInstances();\r
89                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
90                                 +"\"vnfInstanceId\":\"1882938\","\r
91                                 +"\"networkInstanceId\":\"1882937\","\r
92                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
93                                 +"\"vfModuleInstanceId\":\"1882934\","\r
94                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false}}}";\r
95                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
96                 String respBody = resp.getEntity().toString();\r
97                 assertTrue(respBody.indexOf("Error parsing request.  No valid model-info is specified") != -1);\r
98         }\r
99         \r
100         @Test\r
101         public void createServiceInstanceInvalidModelInvariantId(){\r
102                 ServiceInstances instance = new ServiceInstances();\r
103                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
104                                 +"\"vnfInstanceId\":\"1882938\","\r
105                                 +"\"networkInstanceId\":\"1882937\","\r
106                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
107                                 +"\"vfModuleInstanceId\":\"1882934\","\r
108                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"1234\"}}}";\r
109                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
110                 String respBody = resp.getEntity().toString();\r
111                 assertTrue(respBody.indexOf("Error parsing request.  No valid modelType is specified") != -1);\r
112         }\r
113         \r
114         @Test\r
115         public void createServiceInstanceNullModelVersion(){\r
116                 ServiceInstances instance = new ServiceInstances();\r
117                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
118                                 +"\"vnfInstanceId\":\"1882938\","\r
119                                 +"\"networkInstanceId\":\"1882937\","\r
120                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
121                                 +"\"vfModuleInstanceId\":\"1882934\","\r
122                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\"}}}";\r
123                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
124                 String respBody = resp.getEntity().toString();\r
125                 assertTrue(respBody.indexOf("Error parsing request.  No valid modelType is specified") != -1);\r
126         }\r
127         \r
128         \r
129         @Test\r
130         public void createServiceInstanceNullModelType(){\r
131                 ServiceInstances instance = new ServiceInstances();\r
132                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
133                                 +"\"vnfInstanceId\":\"1882938\","\r
134                                 +"\"networkInstanceId\":\"1882937\","\r
135                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
136                                 +"\"vfModuleInstanceId\":\"1882934\","\r
137                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\"}}}";\r
138                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
139                 String respBody = resp.getEntity().toString();\r
140                 assertTrue(respBody.indexOf("Error parsing request.  No valid modelType is specified") != -1);\r
141         }\r
142         \r
143         @Test\r
144         public void createServiceInstanceInvalidModelType(){\r
145                 ServiceInstances instance = new ServiceInstances();\r
146                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
147                                 +"\"vnfInstanceId\":\"1882938\","\r
148                                 +"\"networkInstanceId\":\"1882937\","\r
149                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
150                                 +"\"vfModuleInstanceId\":\"1882934\","\r
151                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"testmodel\"}}}";\r
152                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
153                 String respBody = resp.getEntity().toString();\r
154                 assertTrue(respBody.indexOf("Mapping of request to JSON object failed.") != -1);\r
155         }\r
156         \r
157         @Test\r
158         public void createServiceInstanceNullModelName(){\r
159                 ServiceInstances instance = new ServiceInstances();\r
160                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
161                                 +"\"vnfInstanceId\":\"1882938\","\r
162                                 +"\"networkInstanceId\":\"1882937\","\r
163                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
164                                 +"\"vfModuleInstanceId\":\"1882934\","\r
165                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\"}}}";\r
166                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
167                 String respBody = resp.getEntity().toString();\r
168                 assertTrue(respBody.indexOf("Error parsing request.  No valid modelName is specified") != -1);\r
169         }\r
170         \r
171         @Test\r
172         public void createServiceInstanceInvalidVersionForAutoBuildVfModules(){\r
173                 ServiceInstances instance = new ServiceInstances();\r
174                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
175                                 +"\"vnfInstanceId\":\"1882938\","\r
176                                 +"\"networkInstanceId\":\"1882937\","\r
177                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
178                                 +"\"vfModuleInstanceId\":\"1882934\","\r
179                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": true},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
180                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
181                 String respBody = resp.getEntity().toString();\r
182                 assertTrue(respBody.indexOf("Error parsing request.  AutoBuildVfModule is not valid in the v2 version") != -1);\r
183         }\r
184         \r
185         @Test\r
186         public void createServiceInstanceNullRequestParameter(){\r
187                 ServiceInstances instance = new ServiceInstances();\r
188                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
189                                 +"\"vnfInstanceId\":\"1882938\","\r
190                                 +"\"networkInstanceId\":\"1882937\","\r
191                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
192                                 +"\"vfModuleInstanceId\":\"1882934\","\r
193                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
194                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
195                 String respBody = resp.getEntity().toString();\r
196                 assertTrue(respBody.indexOf("Error parsing request.  No valid subscriptionServiceType is specified") != -1);\r
197         }\r
198         \r
199         @Test\r
200         public void createServiceInstanceNullSubscriptionType(){\r
201                 ServiceInstances instance = new ServiceInstances();\r
202                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
203                                 +"\"vnfInstanceId\":\"1882938\","\r
204                                 +"\"networkInstanceId\":\"1882937\","\r
205                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
206                                 +"\"vfModuleInstanceId\":\"1882934\","\r
207                                 + "\"requestDetails\": {\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\"},\"requestParameters\": { \"autoBuildVfModules\": false},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
208                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
209                 String respBody = resp.getEntity().toString();\r
210                 assertTrue(respBody.indexOf("Error parsing request.  No valid subscriptionServiceType is specified") != -1);\r
211         }\r
212         \r
213         @Test\r
214         public void createServiceInstanceAnbormalInvalidJson(){\r
215                 ServiceInstances instance = new ServiceInstances();\r
216                 String requestJson = "{\"name\":\"test\"}";\r
217                 Response resp = instance.createServiceInstance(requestJson, "v2");\r
218                 String respStr = resp.getEntity().toString();\r
219                 assertTrue(respStr.indexOf("Mapping of request to JSON object failed") != -1);\r
220         }\r
221         \r
222         /*** Activate Service Instance Test Cases ***/\r
223         \r
224         @Test\r
225         public void activateServiceInstanceAnbormalInvalidJson(){\r
226                 ServiceInstances instance = new ServiceInstances();\r
227                 String requestJson = "{\"name\":\"test\"}";\r
228                 Response resp = instance.activateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
229                 String respStr = resp.getEntity().toString();\r
230                 assertTrue(respStr.indexOf("Mapping of request to JSON object failed") != -1);\r
231         }\r
232         \r
233         @Test\r
234         public void activateServiceInstanceInvalidModelVersionId(){\r
235                 ServiceInstances instance = new ServiceInstances();\r
236                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
237                                 +"\"vnfInstanceId\":\"1882938\","\r
238                                 +"\"networkInstanceId\":\"1882937\","\r
239                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
240                                 +"\"vfModuleInstanceId\":\"1882934\","\r
241                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d37\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
242                 Response resp = instance.activateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
243                 String respStr = resp.getEntity().toString();\r
244                 assertTrue(respStr.indexOf("Error parsing request.  No valid modelVersionId in relatedInstance is specified") != -1);\r
245         }\r
246         \r
247         @Test\r
248         public void activateServiceInstanceInvalidServiceInstanceId(){\r
249                 ServiceInstances instance = new ServiceInstances();\r
250                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
251                                 +"\"vnfInstanceId\":\"1882938\","\r
252                                 +"\"networkInstanceId\":\"1882937\","\r
253                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
254                                 +"\"vfModuleInstanceId\":\"1882934\","\r
255                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d37\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
256                 Response resp = instance.activateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
257                 String respStr = resp.getEntity().toString();\r
258                 assertTrue(respStr.indexOf("Error parsing request.  No valid serviceInstanceId matching the serviceInstanceId in request URI is specified") != -1);\r
259         }\r
260         \r
261         @Test\r
262         public void activateServiceInstanceTestNormal(){\r
263                 ServiceInstances instance = new ServiceInstances();\r
264                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
265                                 +"\"vnfInstanceId\":\"1882938\","\r
266                                 +"\"networkInstanceId\":\"1882937\","\r
267                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
268                                 +"\"vfModuleInstanceId\":\"1882934\","\r
269                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
270                 Response resp = instance.activateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
271                 String respStr = resp.getEntity().toString();\r
272                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
273         }\r
274         \r
275         /*** Deactivate Service Instance Test Cases ***/\r
276         \r
277         @Test\r
278         public void deactivateServiceInstanceAnbormalInvalidJson(){\r
279                 ServiceInstances instance = new ServiceInstances();\r
280                 String requestJson = "{\"name\":\"test\"}";\r
281                 Response resp = instance.deactivateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
282                 String respStr = resp.getEntity().toString();\r
283                 assertTrue(respStr.indexOf("Mapping of request to JSON object failed") != -1);\r
284         }\r
285         \r
286         @Test\r
287         public void deactivateServiceInstanceInvalidModelVersionId(){\r
288                 ServiceInstances instance = new ServiceInstances();\r
289                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
290                                 +"\"vnfInstanceId\":\"1882938\","\r
291                                 +"\"networkInstanceId\":\"1882937\","\r
292                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
293                                 +"\"vfModuleInstanceId\":\"1882934\","\r
294                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d37\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
295                 Response resp = instance.deactivateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
296                 String respStr = resp.getEntity().toString();\r
297                 assertTrue(respStr.indexOf("Error parsing request.  No valid modelVersionId in relatedInstance is specified") != -1);\r
298         }\r
299         \r
300         @Test\r
301         public void deactivateServiceInstanceInvalidServiceInstanceId(){\r
302                 ServiceInstances instance = new ServiceInstances();\r
303                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
304                                 +"\"vnfInstanceId\":\"1882938\","\r
305                                 +"\"networkInstanceId\":\"1882937\","\r
306                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
307                                 +"\"vfModuleInstanceId\":\"1882934\","\r
308                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d37\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
309                 Response resp = instance.deactivateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
310                 String respStr = resp.getEntity().toString();\r
311                 assertTrue(respStr.indexOf("Error parsing request.  No valid serviceInstanceId matching the serviceInstanceId in request URI is specified") != -1);\r
312         }\r
313         \r
314         @Test\r
315         public void deactivateServiceInstanceTestNormal(){\r
316                 ServiceInstances instance = new ServiceInstances();\r
317                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
318                                 +"\"vnfInstanceId\":\"1882938\","\r
319                                 +"\"networkInstanceId\":\"1882937\","\r
320                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
321                                 +"\"vfModuleInstanceId\":\"1882934\","\r
322                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
323                 Response resp = instance.deactivateServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
324                 String respStr = resp.getEntity().toString();\r
325                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
326         }\r
327         \r
328         /*** Delete Service Instance Test Cases ***/\r
329         \r
330         @Test\r
331         public void deleteServiceInstanceAnbormalInvalidJson(){\r
332                 ServiceInstances instance = new ServiceInstances();\r
333                 String requestJson = "{\"name\":\"test\"}";\r
334                 Response resp = instance.deleteServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
335                 String respStr = resp.getEntity().toString();\r
336                 assertTrue(respStr.indexOf("Mapping of request to JSON object failed") != -1);\r
337         }\r
338         \r
339         @Test\r
340         public void deleteServiceInstanceInvalidModelVersionId(){\r
341                 ServiceInstances instance = new ServiceInstances();\r
342                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
343                                 +"\"vnfInstanceId\":\"1882938\","\r
344                                 +"\"networkInstanceId\":\"1882937\","\r
345                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
346                                 +"\"vfModuleInstanceId\":\"1882934\","\r
347                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d37\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
348                 Response resp = instance.deleteServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
349                 String respStr = resp.getEntity().toString();\r
350                 assertTrue(respStr.indexOf("Error parsing request.  No valid modelVersionId is specified") != -1);\r
351         }\r
352         \r
353         @Test\r
354         public void deleteServiceInstanceInvalidServiceInstanceId(){\r
355                 ServiceInstances instance = new ServiceInstances();\r
356                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
357                                 +"\"vnfInstanceId\":\"1882938\","\r
358                                 +"\"networkInstanceId\":\"1882937\","\r
359                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
360                                 +"\"vfModuleInstanceId\":\"1882934\","\r
361                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d37\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\"}}}";\r
362                 Response resp = instance.deleteServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
363                 String respStr = resp.getEntity().toString();\r
364                 assertTrue(respStr.indexOf("Error parsing request.  No valid modelVersionId is specified") != -1);\r
365         }\r
366         \r
367         @Test\r
368         public void deleteServiceInstanceTestNormal(){\r
369                 ServiceInstances instance = new ServiceInstances();\r
370                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
371                                 +"\"vnfInstanceId\":\"1882938\","\r
372                                 +"\"networkInstanceId\":\"1882937\","\r
373                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
374                                 +"\"vfModuleInstanceId\":\"1882934\","\r
375                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
376                 Response resp = instance.deleteServiceInstance(requestJson, "v5","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
377                 String respStr = resp.getEntity().toString();\r
378                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
379         }\r
380         \r
381         /*** Create Vnf Instance Test Cases ***/\r
382         \r
383         @Test\r
384         public void createVNFInstanceTestInvalidCloudConfiguration(){\r
385                 ServiceInstances instance = new ServiceInstances();\r
386                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
387                                 +"\"vnfInstanceId\":\"1882938\","\r
388                                 +"\"networkInstanceId\":\"1882937\","\r
389                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
390                                 +"\"vfModuleInstanceId\":\"1882934\","\r
391                                 + "\"requestDetails\": {\"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
392                 Response resp = instance.createVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
393                 String respStr = resp.getEntity().toString();\r
394                 assertTrue(respStr.indexOf("Error parsing request.  No valid cloudConfiguration is specified") != -1);\r
395         }\r
396         \r
397         @Test\r
398         public void createVNFInstanceTestInvalidIcpCloudRegionId(){\r
399                 ServiceInstances instance = new ServiceInstances();\r
400                 String s = "\"cloudConfiguration\":{}";\r
401                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
402                                 +"\"vnfInstanceId\":\"1882938\","\r
403                                 +"\"networkInstanceId\":\"1882937\","\r
404                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
405                                 +"\"vfModuleInstanceId\":\"1882934\","\r
406                                 + "\"requestDetails\": {\"cloudConfiguration\":{}, \"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
407                 Response resp = instance.createVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
408                 String respStr = resp.getEntity().toString();\r
409                 assertTrue(respStr.indexOf("Error parsing request.  No valid lcpCloudRegionId is specified") != -1);\r
410         }\r
411         \r
412         @Test\r
413         public void createVNFInstanceTestInvalidTenantId(){\r
414                 ServiceInstances instance = new ServiceInstances();\r
415                 String s = "\"cloudConfiguration\":{}";\r
416                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
417                                 +"\"vnfInstanceId\":\"1882938\","\r
418                                 +"\"networkInstanceId\":\"1882937\","\r
419                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
420                                 +"\"vfModuleInstanceId\":\"1882934\","\r
421                                 + "\"requestDetails\": {\"cloudConfiguration\":{\"lcpCloudRegionId\":\"2993841\"}, \"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
422                 Response resp = instance.createVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
423                 String respStr = resp.getEntity().toString();\r
424                 assertTrue(respStr.indexOf("Error parsing request.  No valid tenantId is specified") != -1);\r
425         }\r
426         \r
427         @Test\r
428         public void createVNFInstanceTestNormal(){\r
429                 ServiceInstances instance = new ServiceInstances();\r
430                 String s = "\"cloudConfiguration\":{}";\r
431                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
432                                 +"\"vnfInstanceId\":\"1882938\","\r
433                                 +"\"networkInstanceId\":\"1882937\","\r
434                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
435                                 +"\"vfModuleInstanceId\":\"1882934\","\r
436                                 + "\"requestDetails\": {\"cloudConfiguration\":{\"lcpCloudRegionId\":\"2993841\",\"tenantId\":\"2910032\"}, \"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
437                 Response resp = instance.createVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34");\r
438                 String respStr = resp.getEntity().toString();\r
439                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
440         }\r
441         \r
442         /*** Replace Vnf Instance Test Cases ***/\r
443         @Test\r
444         public void replaceVNFInstanceTestNormal(){\r
445                 ServiceInstances instance = new ServiceInstances();\r
446                 String s = "\"cloudConfiguration\":{}";\r
447                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
448                                 +"\"vnfInstanceId\":\"1882938\","\r
449                                 +"\"networkInstanceId\":\"1882937\","\r
450                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
451                                 +"\"vfModuleInstanceId\":\"1882934\","\r
452                                 + "\"requestDetails\": {\"cloudConfiguration\":{\"lcpCloudRegionId\":\"2993841\",\"tenantId\":\"2910032\"}, \"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
453                 Response resp = instance.replaceVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34","557ea944-c83e-43cf-9ed7-3a354abd6d93");\r
454                 String respStr = resp.getEntity().toString();\r
455                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
456         }\r
457         \r
458         /*** Update Vnf Instance Test Cases ***/\r
459         \r
460         @Test\r
461         public void updateVNFInstanceTestNormal(){\r
462                 ServiceInstances instance = new ServiceInstances();\r
463                 String s = "\"cloudConfiguration\":{}";\r
464                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
465                                 +"\"vnfInstanceId\":\"1882938\","\r
466                                 +"\"networkInstanceId\":\"1882937\","\r
467                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
468                                 +"\"vfModuleInstanceId\":\"1882934\","\r
469                                 + "\"requestDetails\": {\"cloudConfiguration\":{\"lcpCloudRegionId\":\"2993841\",\"tenantId\":\"2910032\"}, \"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
470                 Response resp = instance.updateVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34","557ea944-c83e-43cf-9ed7-3a354abd6d93");\r
471                 String respStr = resp.getEntity().toString();\r
472                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
473         }\r
474         \r
475         /*** Update Vnf Instance Test Cases ***/\r
476         \r
477         @Test\r
478         public void deleteVNFInstanceTestNormal(){\r
479                 ServiceInstances instance = new ServiceInstances();\r
480                 String s = "\"cloudConfiguration\":{}";\r
481                 String requestJson = "{\"serviceInstanceId\":\"1882939\","\r
482                                 +"\"vnfInstanceId\":\"1882938\","\r
483                                 +"\"networkInstanceId\":\"1882937\","\r
484                                 +"\"volumeGroupInstanceId\":\"1882935\","\r
485                                 +"\"vfModuleInstanceId\":\"1882934\","\r
486                                 + "\"requestDetails\": {\"cloudConfiguration\":{\"lcpCloudRegionId\":\"2993841\",\"tenantId\":\"2910032\"}, \"relatedInstanceList\" :[{\"relatedInstance\":{\"instanceName\":\"testInstance\",\"instanceId\":\"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"4839499\"}}}],\"requestInfo\": { \"source\": \"VID\", \"requestorId\": \"zz9999\",\"instanceName\": \"testService\"},\"requestParameters\": { \"autoBuildVfModules\": false,\"subscriptionServiceType\": \"test\"},\"modelInfo\":{\"modelInvariantId\": \"557ea944-c83e-43cf-9ed7-3a354abd6d34\",\"modelVersion\":\"v2\",\"modelType\":\"service\",\"modelName\":\"serviceModel\",\"modelVersionId\":\"288393\",\"modelCustomizationId\":\"389823213\"}}}";\r
487                 Response resp = instance.deleteVnfInstance(requestJson, "v3","557ea944-c83e-43cf-9ed7-3a354abd6d34","557ea944-c83e-43cf-9ed7-3a354abd6d93");\r
488                 String respStr = resp.getEntity().toString();\r
489                 assertTrue(respStr.indexOf("SVC2000") != -1);\r
490         }\r
491 }\r