[PORTAL-7] Rebase
[portal.git] / ecomp-portal-FE-common / client / app / views / widgets / widget-details-dialog / widget-details.controller.spec.js
diff --git a/ecomp-portal-FE-common/client/app/views/widgets/widget-details-dialog/widget-details.controller.spec.js b/ecomp-portal-FE-common/client/app/views/widgets/widget-details-dialog/widget-details.controller.spec.js
new file mode 100644 (file)
index 0000000..1762fad
--- /dev/null
@@ -0,0 +1,154 @@
+/*-\r
+ * ================================================================================\r
+ * ECOMP Portal\r
+ * ================================================================================\r
+ * Copyright (C) 2017 AT&T Intellectual Property\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ================================================================================\r
+ */\r
+// 'use strict';\r
+// describe('Controller: WidgetDetailsModalCtrl', ()=> {\r
+//     /**\r
+//      * INITIALIZATION\r
+//      */\r
+//     beforeEach(module('testUtils'));\r
+//     beforeEach(module('ecompApp'));\r
+//\r
+//     let promisesTestUtils;\r
+//     //destroy $http default cache before starting to prevent the error 'default cache already exists'\r
+//     //_promisesTestUtils_ comes from testUtils for promises resolve/reject\r
+//     beforeEach(inject((_CacheFactory_, _promisesTestUtils_)=> {\r
+//         _CacheFactory_.destroyAll();\r
+//         promisesTestUtils = _promisesTestUtils_;\r
+//     }));\r
+//\r
+//     let widgetDetails, scope, $controller, $q, $rootScope, $log, widgetsService, errorMessageByCode, ECOMP_URL_REGEX;\r
+//     let deferredAdminApps, deferredUserProfile;\r
+//     let applicationsServiceMock, widgetsServiceMock, userProfileServiceMock;\r
+//     beforeEach(inject((_$controller_, _$q_, _$rootScope_, _$log_)=> {\r
+//         [$controller, $q, $rootScope, $log] = [_$controller_, _$q_, _$rootScope_, _$log_];\r
+//\r
+//         deferredAdminApps = $q.defer();\r
+//         deferredUserProfile = $q.defer();\r
+//         /*applicationsServiceMock = {\r
+//             getAppsForSuperAdminAndAccountAdmin: () => {\r
+//                 var promise = () => {return deferredAdminApps.promise};\r
+//                 var cancel = jasmine.createSpy();\r
+//                 return {\r
+//                     promise: promise,\r
+//                     cancel: cancel\r
+//                 }\r
+//             }\r
+//         };*/\r
+//\r
+//         widgetsServiceMock = {\r
+//             updateWidget: () => {\r
+//                 var promise = () => {return deferredAdminApps.promise};\r
+//                 var cancel = jasmine.createSpy();\r
+//                 return {\r
+//                     promise: promise,\r
+//                     cancel: cancel\r
+//                 }\r
+//             },\r
+//             createWidget: () => {\r
+//                 var promise = () => {return deferredAdminApps.promise};\r
+//                 var cancel = jasmine.createSpy();\r
+//                 return {\r
+//                     promise: promise,\r
+//                     cancel: cancel\r
+//                 }\r
+//             }\r
+//         };\r
+//\r
+//         userProfileServiceMock = jasmine.createSpyObj('userProfileServiceMock',['getUserProfile']);\r
+//         userProfileServiceMock.getUserProfile.and.returnValue(deferredUserProfile.promise);\r
+//\r
+//         applicationsServiceMock = jasmine.createSpyObj('applicationsServiceMock',['getAppsForSuperAdminAndAccountAdmin']);\r
+//         applicationsServiceMock.getAppsForSuperAdminAndAccountAdmin.and.returnValue(deferredAdminApps.promise);\r
+//\r
+//     }));\r
+//\r
+//     beforeEach(()=> {\r
+//         errorMessageByCode = [];\r
+//         ECOMP_URL_REGEX = "";\r
+//         scope = $rootScope.$new();\r
+//         createController(scope);\r
+//     });\r
+//\r
+//     let createController = scopeObj => {\r
+//         widgetDetails = $controller('WidgetDetailsModalCtrl', {\r
+//             $scope: scope,\r
+//             $log: $log,\r
+//             applicationsService: applicationsServiceMock,\r
+//             widgetsService: widgetsServiceMock,\r
+//             errorMessageByCode: errorMessageByCode,\r
+//             ECOMP_URL_REGEX: ECOMP_URL_REGEX,\r
+//             userProfileService: userProfileServiceMock\r
+//         });\r
+//     };\r
+//\r
+//     /**\r
+//      * MOCK DATA\r
+//      */\r
+//     let newWidgetModel = {\r
+//         name: null,\r
+//         appId: null,\r
+//         appName: null,\r
+//         width: 360,\r
+//         height: 300,\r
+//         url: null\r
+//     };\r
+//     let exsistingWidget = {\r
+//         name: 'some widget',\r
+//         appId: 1,\r
+//         appName: 'APP NAME',\r
+//         width: 360,\r
+//         height: 300,\r
+//         url: 'http://a.com'\r
+//     };\r
+//     let adminApps = [{id: 1, name: 'a'}, {id: 2, name: 'b'}];\r
+//\r
+//     /**\r
+//      * TEST CASES\r
+//      */\r
+//     it('should initialize controller with new widget mode when opening the modal without selected widget', ()=> {\r
+//         expect(widgetDetails.widget).toEqual(newWidgetModel);\r
+//     });\r
+//\r
+//     it('should initialize controller with exsisting widget details when opening the modal with selected widget', ()=> {\r
+//         scope.ngDialogData = {\r
+//             widget: exsistingWidget\r
+//         };\r
+//         createController(scope);\r
+//         expect(widgetDetails.widget).toEqual(exsistingWidget);\r
+//     });\r
+//\r
+//     it('should populate widget selected app name and id when initializing controller with widget', () =>{\r
+//         deferredAdminApps.resolve(adminApps);\r
+//         scope.ngDialogData = {\r
+//             widget: exsistingWidget\r
+//         };\r
+//         createController(scope);\r
+//         scope.$apply();\r
+//         expect(widgetDetails.widget.appId).toEqual(adminApps[0].id);\r
+//         expect(widgetDetails.widget.appName).toEqual(adminApps[0].name);\r
+//     });\r
+//\r
+//     //TODO:\r
+//     //save changes fail - conflict handling\r
+//     //save changes success\r
+//\r
+//\r
+//\r
+// });\r