--- /dev/null
+/*-\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