text: /*-
   * ============LICENSE_START==========================================
   * ONAP Portal
   * ===================================================================
   * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
   * ===================================================================
   *
   * Unless otherwise specified, all software contained herein is licensed
   * under the Apache License, Version 2.0 (the "License");
   * you may not use this software except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *             http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   *
   * Unless otherwise specified, all documentation contained herein is licensed
   * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
   * you may not use this documentation except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *             https://creativecommons.org/licenses/by/4.0/
   *
   * Unless required by applicable law or agreed to in writing, documentation
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   *
   * ============LICENSE_END============================================
   *
   * 
   */
  
  //'use strict';
  //
  //describe('Controller: NewAdminCtrl ', () => {
  //    beforeEach(module('ecompApp'));
  //
  //    //destroy $http default cache before starting to prevent the error 'default cache already exists'
  //    beforeEach(inject((_CacheFactory_)=> {
  //        _CacheFactory_.destroyAll();
  //    }));
  //
  //
  //    let newCtrl, $controller, $q, $rootScope, $log;
  //
  //    beforeEach(inject((_$controller_, _$q_, _$rootScope_, _$log_)=> {
  //        [$controller, $q, $rootScope, $log] = [_$controller_, _$q_, _$rootScope_, _$log_];
  //    }));
  //
  //    let deferredUsersList, deferredAdminAppsRoles, deferredUpdateRolesRes;
  //    let usersServiceMock, adminsServiceMock;
  //    beforeEach(()=> {
  //        [deferredUsersList, deferredAdminAppsRoles, deferredUpdateRolesRes] = [$q.defer(), $q.defer(), $q.defer()];
  //
  //        //usersServiceMock = jasmine.createSpyObj('usersServiceMock', ['searchUsers']);
  //        usersServiceMock = {
  //            searchUsers: () => {
  //                var promise = () => {return deferredUsersList.promise};
  //                var cancel = jasmine.createSpy();
  //                return {
  //                    promise: promise,
  //                    cancel: cancel
  //                }
  //            }
  //        };
  //
  //        adminsServiceMock = jasmine.createSpyObj('adminsServiceMock', ['getAdminAppsRoles', 'updateAdminAppsRoles']);
  //
  //        //usersServiceMock.searchUsers.and.returnValue(deferredUsersList.promise);
  //        adminsServiceMock.getAdminAppsRoles.and.returnValue(deferredAdminAppsRoles.promise);
  //        adminsServiceMock.updateAdminAppsRoles.and.returnValue(deferredUpdateRolesRes.promise);
  //
  //        newCtrl = $controller('NewAdminModalCtrl', {
  //            $log: $log,
  //            usersService: usersServiceMock,
  //            adminsService: adminsServiceMock,
  //            $scope: $rootScope
  //        });
  //    });
  //
  //    it('should init default values when loading the controller', ()=> {
  //        //expect(newCtrl.searchUsersInProgress).toBe(false);
  //        expect(newCtrl.dialogState).toBe(1);
  //        expect(newCtrl.selectedUser).toBe(null);
  //    });
  //
  //    it('should populate retrieved users when search users service returns a list ', ()=> {
  //        //spyOn(usersServiceMock, 'searchUsers');
  //        let usersListRes = [{user: 1}, {user: 2}];
  //        newCtrl.searchUserString = 'some org user name';
  //        deferredUsersList.resolve(usersListRes);
  //        newCtrl.searchUsers();
  //        $rootScope.$apply();
  //
  //        //expect(usersServiceMock.searchUsers).toHaveBeenCalledWith(newCtrl.searchUserString);
  //        expect(newCtrl.searchUsersResults).toEqual(usersListRes);
  //        expect(newCtrl.searchUsersInProgress).toBe(false);
  //    });
  //
  //    it('should log the error when search users fails', ()=> {
  //        spyOn($log, 'error');
  //        deferredUsersList.reject('oh snap!');
  //        newCtrl.searchUsers();
  //        $rootScope.$apply();
  //        expect($log.error).toHaveBeenCalled();
  //    });
  //
  //    it('should populate admin apps roles and move to the next screen when adminsService.getAdminAppsRoles succeeded', ()=> {
  //        let userApps = {appsRoles: [{id: 1, isAdmin: false}, {id: 2, isAdmin: true}]};
  //        deferredAdminAppsRoles.resolve(userApps);
  //
  //        newCtrl.searchUsersInProgress = false;
  //        newCtrl.selectedUser = {orgUserId: 'orgUserId'};
  //
  //        newCtrl.getAdminAppsRoles();
  //        $rootScope.$apply();
  //
  //        expect(adminsServiceMock.getAdminAppsRoles).toHaveBeenCalledWith(newCtrl.selectedUser.orgUserId);
  //        expect(newCtrl.adminAppsRoles).toEqual(userApps.appsRoles);
  //        expect(newCtrl.dialogState).toBe(2);
  //    });
  //
  //    it('should  log the error when adminsService.getAdminAppsRoles fails', ()=> {
  //        spyOn($log, 'error');
  //        deferredAdminAppsRoles.reject('some error');
  //
  //        newCtrl.searchUsersInProgress = false;
  //        newCtrl.selectedUser = {orgUserId: 'orgUserId'};
  //
  //        newCtrl.getAdminAppsRoles();
  //        $rootScope.$apply();
  //
  //        expect($log.error).toHaveBeenCalled();
  //    });
  //    it('should  log the error when trying to getAdminAppsRoles without selecting user ', ()=> {
  //        spyOn($log, 'error');
  //
  //        newCtrl.searchUsersInProgress = false;
  //        newCtrl.selectedUser = null;
  //
  //        newCtrl.getAdminAppsRoles();
  //        $rootScope.$apply();
  //
  //        expect($log.error).toHaveBeenCalled();
  //    });
  //    //it('should setSelectedUser when choosing user', ()=> {
  //    //
  //    //});
  //    //it('should set isAdmin as false when removing app from the administrated apps list', ()=> {
  //    //});
  //    it('should set isAdmin as true when adding app via the dropdown menu', ()=> {
  //        newCtrl.adminAppsRoles = [{id: 1, isAdmin: false},{id: 2, isAdmin: true}];
  //        //simulate UI change
  //        $rootScope.$apply('newAdmin.selectedNewApp = null');
  //        $rootScope.$apply('newAdmin.selectedNewApp = {id: 1, isAdmin: true}');
  //
  //        expect(newCtrl.adminAppsRoles[0].isAdmin).toBe(true);
  //        expect(newCtrl.selectedNewApp).toBe(null);
  //    });
  //
  //    it('should close the modal when updating apps roles succeeded', ()=> {
  //        $rootScope.closeThisDialog = () => {};
  //        spyOn($rootScope,'closeThisDialog');
  //
  //        newCtrl.selectedUser = {orgUserId: 'orgUserId'};
  //        newCtrl.adminAppsRoles = [{id: 1}];
  //
  //        deferredUpdateRolesRes.resolve();
  //        newCtrl.updateAdminAppsRoles();
  //        $rootScope.$apply();
  //
  //        expect(adminsServiceMock.updateAdminAppsRoles).toHaveBeenCalledWith({orgUserId: newCtrl.selectedUser.orgUserId, appsRoles: newCtrl.adminAppsRoles});
  //        expect($rootScope.closeThisDialog).toHaveBeenCalled();
  //    });
  //    it('should log the error when updating apps roles fails', ()=> {
  //        newCtrl.selectedUser = {orgUserId: 'orgUserId'};
  //        newCtrl.adminAppsRoles = [{id: 1}];
  //
  //        spyOn($log,'error');
  //        deferredUpdateRolesRes.reject();
  //        newCtrl.updateAdminAppsRoles();
  //        $rootScope.$apply();
  //        expect($log.error).toHaveBeenCalled();
  //    });
  //    //it('should display the add admin dropdown when clicking the add button', ()=> {
  //    //});
  //
  //});
  