[VID-6] Initial rebase push
[vid.git] / vid-app-common / src / main / webapp / app / vid / test / testMso.js
1 "use strict";\r
2 \r
3 app.config(function($logProvider){\r
4     // Optionally set to "false" to disable debug logging.\r
5     $logProvider.debugEnabled(true);\r
6 });\r
7 \r
8 app.controller("testController", [ "$scope", "$timeout", "$cookieStore", "$log", "COMPONENT", "DataService", "PropertyService",\r
9     function($scope, $timeout, $cookieStore, $log, COMPONENT, DataService, PropertyService) {\r
10 \r
11                 $scope.popup = new Object();\r
12                 $scope.isTestMode = false;\r
13 \r
14                 $scope.init = function(properties) {\r
15                         /*\r
16                          * These 2 statements should be included in non-test code.\r
17                          */\r
18                         PropertyService.setMsoMaxPollingIntervalMsec(properties.msoMaxPollingIntervalMsec);\r
19                         PropertyService.setMsoMaxPolls(properties.msoMaxPolls);\r
20 \r
21                         /*\r
22                          * "setTestMode" is only used for testing.\r
23                          */\r
24 \r
25                         setTestMode();\r
26                         \r
27                         DataService.setSubscriberName("Mobility");\r
28                         DataService.setGlobalCustomerId("CUSTID12345")\r
29                         DataService.setServiceType("Mobility Type 1");\r
30                         DataService.setServiceName("Mobility Service 1");\r
31                         DataService.setServiceInstanceId("mmsc-test-service-instance");\r
32                         DataService.setVnfInstanceId("abcd-12345-56789");\r
33                         DataService.setVfModuleInstanceId("xye-99990123213");\r
34                 }\r
35                 \r
36                 var TEST_MODE_COOKIE = "isTestModeEnabled";\r
37 \r
38                 var defaultMsoBaseUrl = PropertyService.getMsoBaseUrl();\r
39 \r
40                 var setTestMode = function() {\r
41                     setTestMsoMode($cookieStore.get(TEST_MODE_COOKIE));\r
42                     PropertyService.setMsoMaxPollingIntervalMsec(1000);\r
43                     PropertyService.setMsoMaxPolls(7);\r
44                     PropertyService.setServerResponseTimeoutMsec(10000);\r
45                 };\r
46 \r
47                 $scope.testMsoModeChanged = function() {\r
48                     setTestMsoMode($scope.isTestMsoMode);\r
49                 };\r
50 \r
51                 var setTestMsoMode = function(isEnabled) {\r
52                     $scope.isTestMsoMode = isEnabled;\r
53                     $cookieStore.put(TEST_MODE_COOKIE, isEnabled);\r
54                     if (isEnabled) {\r
55                         PropertyService.setMsoBaseUrl("testmso");\r
56                     } else {\r
57                         PropertyService.setMsoBaseUrl(defaultMsoBaseUrl);\r
58                     }\r
59                 }\r
60                 \r
61                 $scope.autoStartCommitTest = function() {\r
62                         /*\r
63                          * Optionally comment in / out one of these method calls (or add a similar\r
64                          * entry) to auto-invoke an entry when the test screen is redrawn.\r
65                          */\r
66                         $timeout(function() {\r
67                                 // $scope.createServiceInstance();\r
68                                 // $scope.deleteServiceInstance();\r
69                                 // $scope.generateInvalidUrl404();                      \r
70                         }, 500);\r
71                 }\r
72                 \r
73                 $scope.autoStartQueryTest = function() {\r
74                         /*\r
75                          * Optionally comment in / out one of these method calls (or add a similar\r
76                          * entry) to auto-invoke an entry when the test screen is redrawn.\r
77                          */\r
78                         $timeout(function() {\r
79                                 // $scope.queryServiceInstance();\r
80                         }, 500);\r
81                 }\r
82                 \r
83                 $scope.queryServiceInstance = function() {\r
84                         /*\r
85                          * Example of method call needed to show service instance details.\r
86                          */\r
87                         $scope.$broadcast("showComponentDetails", {\r
88                             componentId : COMPONENT.SERVICE\r
89                         });\r
90                 }\r
91         \r
92                 $scope.createServiceInstance = function() {\r
93                         /*\r
94                          * Example of method call needed to commit an instance creation request.\r
95                          */\r
96                         $scope.$broadcast("createInstance", {\r
97                                 url : "mso_create_svc_instance",\r
98                                 requestDetails : createServiceRequestDetails\r
99                         });\r
100                 }\r
101         \r
102                 $scope.deleteServiceInstance = function() {\r
103                         /*\r
104                          * Example of method call needed to commit an instance deletion request.\r
105                          */\r
106                         $scope.$broadcast("deleteInstance",     {\r
107                                 url : "mso_delete_svc_instance/bc305d54-75b4-431b-adb2-eb6b9e546014",\r
108                                 requestDetails : deleteServiceRequestDetails\r
109                         });\r
110                 }\r
111         \r
112                 $scope.createVNFInstance = function() {\r
113                         /*\r
114                          * Example of method call needed to commit an instance creation request.\r
115                          */\r
116                         $scope.$broadcast("createInstance", {\r
117                                 url : "mso_create_vnf_instance/bc305d54-75b4-431b-adb2-eb6b9e546099",\r
118                                 requestDetails : createVnfRequestDetails\r
119                         });\r
120                 }\r
121         \r
122                 $scope.deleteVNFInstance = function() {\r
123                         /*\r
124                          * Example of method call needed to commit an instance deletion request.\r
125                          */\r
126                         $scope.$broadcast("deleteInstance",     {\r
127                                 url : "mso_delete_vnf_instance/bc305d54-75b4-431b-adb2-eb6b9e546014/vnfs/ab9000-0009-9999",\r
128                                 requestDetails : deleteVnfRequestDetails\r
129                         });\r
130                 }\r
131                 \r
132                 $scope.createVolumeGroupInstance = function() {\r
133                         /*\r
134                          * Example of method call needed to commit an instance creation request.\r
135                          */\r
136                         $scope.$broadcast("createInstance", {\r
137                                 url : "mso_create_volumegroup_instance/bc305d54-75b4-431b-adb2-eb6b9e546099/vnfs/fe305d54-75b4-431b-adb2-eb6b9e546fea",\r
138                                 requestDetails : createVolumeGroupRequestDetails\r
139                         });\r
140                 }\r
141         \r
142                 $scope.deleteVolumeGroupInstance = function() {\r
143                         /*\r
144                          * Example of method call needed to commit an instance deletion request.\r
145                          */\r
146                         $scope.$broadcast("deleteInstance",     {\r
147                                 url : "mso_delete_volumegroup_instance/bc305d54-75b4-431b-adb2-eb6b9e546014/vnfs/fe305d54-75b4-431b-adb2-eb6b9e546fea/volumeGroups/fe9000-0009-9999",\r
148                                 requestDetails : deleteVolumeGroupRequestDetails\r
149                         });\r
150                 }\r
151                 $scope.createVFModuleInstance = function() {\r
152                         /*\r
153                          * Example of method call needed to commit an instance creation request.\r
154                          */\r
155                         $scope.$broadcast("createInstance", {\r
156                                 url : "mso_create_vfmodule_instance/bc305d54-75b4-431b-adb2-eb6b9e546099/vnfs/111-111-111-111",\r
157                                 requestDetails : createVFModuleRequestDetails\r
158                         });\r
159                 }\r
160         \r
161                 $scope.deleteVFModuleInstance = function() {\r
162                         /*\r
163                          * Example of method call needed to commit an instance deletion request.\r
164                          * \r
165                          */\r
166                         $scope.$broadcast("deleteInstance",     {\r
167                                 url : "mso_delete_vfmodule_instance/2/vnfs/ab/vfModules/a1",\r
168                                 requestDetails : deleteVFModuleRequestDetails\r
169                         });\r
170                 }\r
171                 $scope.createNetworkInstance = function() {\r
172                         $scope.$broadcast("createInstance", {\r
173                                 url : "mso_create_nw_instance/789098877777",\r
174                                 requestDetails : createNetworkRequestDetails\r
175                         });\r
176                 }\r
177         \r
178                 $scope.deleteNetworkInstance = function() {\r
179                         $scope.$broadcast("deleteInstance",     {\r
180                                 url : "mso_delete_nw_instance/bc305d54-75b4-431b-adb2-eb6b9e546014/networks/ff305d54-75b4-ff1b-fff1-eb6b9e5460ff",\r
181                                 requestDetails : deleteNetworkRequestDetails\r
182                         });\r
183                 }\r
184         \r
185                 $scope.generateError = function(testName) {\r
186                         // Clone example request object\r
187                         var request = JSON.parse(JSON.stringify(createServiceRequestDetails));\r
188                         request.modelInfo.modelName = testName;\r
189                         $scope.$broadcast("createInstance", {\r
190                                 url : "mso_create_svc_instance",\r
191                                 requestDetails : request\r
192                         });\r
193                 }\r
194         \r
195                 $scope.generateInvalidUrl404 = function() {\r
196                         var baseUrl = PropertyService.getMsoBaseUrl();\r
197                         PropertyService.setMsoBaseUrl("/INVALID_STRING/");\r
198 \r
199                         $scope.$broadcast("createInstance", {\r
200                                 url : "mso_create_svc_instance",\r
201                                 requestDetails : createServiceRequestDetails,\r
202                                 callbackFunction : function() {\r
203                                     PropertyService.setMsoBaseUrl(baseUrl);\r
204                                     $scope.popup.isVisible = false;\r
205                                 }\r
206                         });     \r
207                 }\r
208         \r
209                 $scope.generateInvalidUrl405 = function() {\r
210                         $scope.$broadcast("createInstance", {\r
211                                 url : "INVALID_STRING_mso_create_svc_instance",\r
212                                 requestDetails : createServiceRequestDetails\r
213                         });\r
214                 }\r
215         \r
216                 /*\r
217                  * Test data objects:\r
218                  */\r
219                 /*var requestParameters = {\r
220                                 "subscriptionServiceType":"ef5256d1-5a33-aadf-13ab-12abad84e764",\r
221                                 "userParams":[{"name":"goldenr","value":"Willie"}, {"name":"lab","value":"Jackson"}, {"name":"goldend","value":"Max"}]} */\r
222                 var requestParameters = { "subscriptionServiceType":"ef5256d1-5a33-aadf-13ab-12abad84e764", userParams:[] };\r
223                 var requestInfo = {\r
224                                 instanceName: "sn5256d1-5a33-55df-13ab-12abad84e764",\r
225                                 productFamilyId: "sn5256d1-5a33-55df-13ab-12abad84edde",\r
226                                 source: "VID",\r
227                                 suppressRollback: true\r
228                 };\r
229                 var subscriberInfo = {\r
230                         globalSubscriberId : "C12345",\r
231                         subscriberName : "General Electric Division 12"\r
232                 };\r
233         \r
234                 var cloudConfiguration = {\r
235                                 lcpCloudRegionId: "cloudregion1",\r
236                                 tenantId: "df5256d1-5a33-55df-13ab-12abad843456"\r
237                                 \r
238                 };\r
239                 var createServiceRequestDetails = {\r
240                         modelInfo : {\r
241                                 modelType : "service",\r
242                                 modelInvariantId : "sn5256d1-5a33-55df-13ab-12abad84e764",\r
243                                 modelNameVersionId : "ab6478e4-ea33-3346-ac12-ab121484adca",\r
244                                 modelName : "WanBonding",\r
245                                 modelVersion : "1",\r
246                                 modelCustomizationName: ""\r
247                         },\r
248                         subscriberInfo : subscriberInfo,\r
249                         requestInfo : requestInfo,\r
250                         requestParameters : requestParameters\r
251                 };\r
252         \r
253                 var deleteServiceRequestDetails = {\r
254                                 modelInfo : {\r
255                                         modelType : "service",\r
256                                         modelInvariantId : "sn5256d1-5a33-55df-13ab-12abad84e764",\r
257                                         modelNameVersionId : "ab6478e4-ea33-3346-ac12-ab121484adca",\r
258                                         modelName : "WanBonding",\r
259                                         modelVersion : "1",\r
260                                         modelCustomizationName: ""\r
261                                 },\r
262                                 requestInfo : requestInfo\r
263                 };\r
264                 \r
265                 var createVFModuleRequestDetails = {\r
266                                 modelInfo : {\r
267                                         modelType : "VFModule",\r
268                                         modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84e764",\r
269                                         modelNameVersionId : "9b6478e4-ea33-3346-ac12-ab121484adc2",\r
270                                         modelName : "model1",\r
271                                         modelVersion : "1",\r
272                                         modelCustomizationName: ""\r
273                                 },\r
274                                 cloudConfiguration: cloudConfiguration,\r
275                                 requestInfo : requestInfo,\r
276                                 relatedInstanceList: [\r
277                                                                                 {\r
278                                                                                     relatedInstance: {\r
279                                                                                        instanceId: "c3514e3-5a33-55df-13ab-12abad84e7cc",\r
280                                                                                        modelInfo: {   \r
281                                                                                           modelType: "volumeGroup",\r
282                                                                                           modelInvariantId: "ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
283                                                                                           modelNameVersionId: "fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
284                                                                                           modelName: "parentServiceModelName",\r
285                                                                                           modelVersion: "1.0"\r
286                                                                                        }\r
287                                                                                     }\r
288                                                                                  },\r
289                                                         {\r
290                                                            relatedInstance: {\r
291                                                               instanceId: "c3514e3-5a33-55df-13ab-12abad84e7cc",\r
292                                                               modelInfo: {   \r
293                                                                  modelType: "service",\r
294                                                                  modelInvariantId: "ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
295                                                                  modelNameVersionId: "fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
296                                                                  modelName: "parentServiceModelName",\r
297                                                                  modelVersion: "1.0"\r
298                                                               }\r
299                                                            }\r
300                                                         },\r
301                                                         {\r
302                                                            relatedInstance: {\r
303                                                               instanceId: "fab256d1-5a33-55df-13ab-12abad8445ff34",\r
304                                                               modelInfo: {\r
305                                                                  modelType: "vnf",\r
306                                                                  modelInvariantId: "ff5256d1-5a33-55df-13ab-12abad84e7ff",\r
307                                                                  modelNameVersionId: "fe6478e4-ea33-3346-ac12-ab121484a3fe",\r
308                                                                  modelName: "vSAMP12",\r
309                                                                  modelVersion: "1.0",\r
310                                                                  modelCustomizationName: "vSAMP12 1"\r
311                                                               }\r
312                                                            }\r
313                                                         }\r
314 \r
315                                                      ],\r
316                                                      requestParameters : requestParameters\r
317                         };\r
318                 \r
319                         var deleteVFModuleRequestDetails = {\r
320                                         modelInfo : {\r
321                                                 modelType : "VFModule",\r
322                                                 modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84e764",\r
323                                                 modelNameVersionId : "9b6478e4-ea33-3346-ac12-ab121484adc2",\r
324                                                 modelName : "model1",\r
325                                                 modelVersion : "1",\r
326                                                 modelCustomizationName: ""\r
327                                         },\r
328                                         cloudConfiguration: cloudConfiguration,\r
329                                         requestInfo : requestInfo,\r
330                                         \r
331                         };\r
332                         \r
333                 var createVnfRequestDetails = {\r
334                                 modelInfo : {\r
335                                         modelType : "vnf",\r
336                                         modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84efc2",\r
337                                         modelNameVersionId : "9b6478e4-ea33-3346-ac12-ab1214847890",\r
338                                         modelName : "model1",\r
339                                         modelVersion : "1",\r
340                                         modelCustomizationName: ""\r
341                                 },\r
342                                 requestInfo : requestInfo,\r
343                                 cloudConfiguration : cloudConfiguration,\r
344                                 relatedInstanceList: [\r
345                                         {\r
346                                             relatedInstance: {\r
347                                                instanceId: "c3514e3-5a09-55df-13ab-1babad84e7cc",\r
348                                                modelInfo: {   \r
349                                                   modelType: "service",\r
350                                                   modelInvariantId: "ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
351                                                   modelNameVersionId: "fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
352                                                   modelName: "parentServiceModelName",\r
353                                                   modelVersion: "1.0"\r
354                                                }\r
355                                             }\r
356                                          }\r
357                                         ]\r
358                         };\r
359                 \r
360                         var deleteVnfRequestDetails = {\r
361                                         modelInfo : {\r
362                                                 modelType : "vnf",\r
363                                                 modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84efc2",\r
364                                                 modelNameVersionId : "9b6478e4-ea33-3346-ac12-ab1214847890",\r
365                                                 modelName : "model1",\r
366                                                 modelVersion : "1",\r
367                                                 modelCustomizationName: ""\r
368                                         },\r
369                                         cloudConfiguration : cloudConfiguration,\r
370                                         requestInfo : requestInfo       \r
371                         };\r
372                         var createVolumeGroupRequestDetails = {\r
373                                 modelInfo : {\r
374                                                 modelType : "volumeGroup",\r
375                                                 modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84efda",\r
376                                                 modelNameVersionId : "9b6478e4-ea33-3346-ac12-ab12148478fa",\r
377                                                 modelName : "model1",\r
378                                                 modelVersion : "1",\r
379                                                 modelCustomizationName: ""\r
380                                         },\r
381                                         cloudConfiguration : cloudConfiguration,\r
382                                         requestInfo : requestInfo,\r
383                                         relatedInstanceList: [\r
384                       {\r
385                           relatedInstance: {\r
386                                   instanceId: "c3514e3-5a33-55df-13ab-12abad84e7cc",\r
387                                   modelInfo: {   \r
388                                           modelType: "service",\r
389                                           modelInvariantId: "ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
390                                           modelNameVersionId: "fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
391                                           modelName: "parentServiceModelName",\r
392                                           modelVersion: "1.0"\r
393                                   }\r
394                           }\r
395                       },\r
396                       {\r
397                           relatedInstance: {\r
398                                   instanceId: "fab256d1-5a33-55df-13ab-12abad8445ff34",\r
399                                   modelInfo: {\r
400                                           modelType: "vnf",\r
401                                           modelInvariantId: "ff5256d1-5a33-55df-13ab-12abad84e7ff",\r
402                                           modelNameVersionId: "fe6478e4-ea33-3346-ac12-ab121484a3fe",\r
403                                           modelName: "vSAMP12",\r
404                                           modelVersion: "1.0",\r
405                                           modelCustomizationName: "vSAMP12 1"\r
406                                   }\r
407                           }\r
408                       }\r
409                       ]\r
410 \r
411                                 };\r
412                         \r
413                                 var deleteVolumeGroupRequestDetails = {\r
414                                         modelInfo : {\r
415                                                 modelType : "volumeGroup",\r
416                                                 modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84efda",\r
417                                                 modelNameVersionId : "9b6478e4-ea33-3346-ac12-ab12148478fa",\r
418                                                 modelName : "vIsbcOamNetwork",\r
419                                                 modelVersion : "1",\r
420                                                 modelCustomizationName: ""\r
421                                         },\r
422                                         cloudConfiguration : cloudConfiguration,\r
423                                         requestInfo : requestInfo\r
424                                 };\r
425                         \r
426                 var createNetworkRequestDetails = {\r
427                         modelInfo : {\r
428                                 modelType : "network",\r
429                                 modelInvariantId : "ab5256d1-5a33-55df-13ab-12abad84e890",\r
430                                 modelNameVersionId : "fe6478e4-ea33-3346-aaaa-ab121484a3fa",\r
431                                 modelName : "vIsbcOamNetwork",\r
432                                 modelVersion : "1",\r
433                                 modelCustomizationName: ""\r
434                         },\r
435                         cloudConfiguration: cloudConfiguration,\r
436                         requestInfo : requestInfo\r
437                 };\r
438         \r
439                 var deleteNetworkRequestDetails = {\r
440                         modelInfo : {\r
441                                 modelType : "network",\r
442                                 modelId : "ff5256d1-5a33-55df-aaaa-12abad84e7ff",\r
443                                 modelNameVersionId : "fe6478e4-ea33-3346-aaaa-ab121484a3fe",\r
444                                 modelName : "vIsbcOamNetwork",\r
445                                 modelVersion : "1"\r
446                         },\r
447                         relatedModelList : [\r
448                                         {\r
449                                                 relatedModel : {\r
450                                                         instanceId : "ff305d54-75b4-431b-adb2-eb6b9e5ff000",\r
451                                                         modelInfo : {\r
452                                                                 modelType : "service",\r
453                                                                 modelId : "ff3514e3-5a33-55df-13ab-12abad84e7ff",\r
454                                                                 modelNameVersionId : "fe6985cd-ea33-3346-ac12-ab121484a3fe",\r
455                                                                 modelName : "Intercarrier Interconnect Session Border Controller",\r
456                                                                 modelVersion : "1"\r
457                                                         }\r
458                                                 }\r
459                                         },\r
460                                         {\r
461                                                 relatedModel : {\r
462                                                         instanceId : "ff305d54-75b4-ff1b-adb2-eb6b9e5460ff",\r
463                                                         modelInfo : {\r
464                                                                 modelType : "vnf",\r
465                                                                 modelId : "ff5256d1-5a33-55df-13ab-12abad84e7ff",\r
466                                                                 modelNameVersionId : "fe6478e4-ea33-3346-ac12-ab121484a3fe",\r
467                                                                 modelName : "vIsbc",\r
468                                                                 modelVersion : "1"\r
469                                                         }\r
470                                                 }\r
471                                         },\r
472                                         {\r
473                                                 relatedModel : {\r
474                                                         instanceId : "ff305d54-75b4-ff1b-bdb2-eb6b9e5460ff",\r
475                                                         modelInfo : {\r
476                                                                 modelType : "vfModule",\r
477                                                                 modelId : "ff5256d1-5a33-55df-13ab-22abad84e7ff",\r
478                                                                 modelNameVersionId : "fe6478e4-ea33-3346-bc12-ab121484a3fe",\r
479                                                                 modelName : "vIsbcRtpExpansionModule",\r
480                                                                 modelVersion : "1"\r
481                                                         }\r
482                                                 }\r
483                                         } ]\r
484                 };\r
485         }\r
486 ]);\r