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