You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by rl...@apache.org on 2017/11/27 20:24:46 UTC
[36/49] ambari git commit: AMBARI-22508 Ambari 3.0: Implement new
design for Admin View: User Management. (atkach)
http://git-wip-us.apache.org/repos/asf/ambari/blob/99b19e58/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/userManagement/UsersListCtrl_test.js
----------------------------------------------------------------------
diff --git a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/userManagement/UsersListCtrl_test.js b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/userManagement/UsersListCtrl_test.js
new file mode 100644
index 0000000..fcafa59
--- /dev/null
+++ b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/userManagement/UsersListCtrl_test.js
@@ -0,0 +1,344 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file 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.
+ */
+
+describe('#Cluster', function () {
+
+ describe('UsersListCtrl', function() {
+
+ var scope, ctrl, $t, $httpBackend;
+
+ beforeEach(module('ambariAdminConsole', function () {}));
+
+ beforeEach(inject(function($rootScope, $controller, _$translate_, _$httpBackend_) {
+ scope = $rootScope.$new();
+ $t = _$translate_.instant;
+ $httpBackend = _$httpBackend_;
+ ctrl = $controller('UsersListCtrl', {
+ $scope: scope
+ });
+ }));
+
+ describe('#clearFilters()', function () {
+
+ it('should clear filters and reset pagination', function () {
+ scope.currentPage = 2;
+ scope.filters.name = 'a';
+ scope.filters.status = {
+ label: $t('common.local'),
+ value: false
+ };
+ scope.filters.type = {
+ label: $t('common.local'),
+ value: 'LOCAL'
+ };
+ scope.clearFilters();
+ expect(scope.filters.name).toEqual('');
+ expect(scope.filters.status).toEqual({
+ label: $t('common.all'),
+ value: '*'
+ });
+ expect(scope.filters.type).toEqual({
+ label: $t('common.all'),
+ value: '*'
+ });
+ expect(scope.currentPage).toEqual(1);
+ });
+
+ });
+
+ describe('#isNotEmptyFilter', function () {
+
+ var cases = [
+ {
+ currentNameFilter: '',
+ currentTypeFilter: null,
+ currentActiveFilter: null,
+ isNotEmptyFilter: false,
+ title: 'no filters'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: false,
+ title: 'empty filters'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'name filter'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'name filter with "0" as string'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'type filter'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'activity filter'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'name and type filters'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'name and activity filters'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'name and admin filters'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'name and type filters with "0" as string'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'name and activity filters with "0" as string'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'name and admin filters with "0" as string'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'type and activity filters'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'type and admin filters'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'activity and admin filters'
+ },
+ {
+ currentNameFilter: '',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters except name one'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters except type one'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters except activity one'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters except admin one'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: '*'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters with "0" as string except type one'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: '*'
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters with "0" as string except activity one'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: 'LOCAL'
+ },
+ currentActiveFilter: {
+ value: false
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters with "0" as string except admin one'
+ },
+ {
+ currentNameFilter: 'a',
+ currentTypeFilter: {
+ value: false
+ },
+ currentActiveFilter: {
+ value: 'LOCAL'
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters'
+ },
+ {
+ currentNameFilter: '0',
+ currentTypeFilter: {
+ value: false
+ },
+ currentActiveFilter: {
+ value: 'LOCAL'
+ },
+ isNotEmptyFilter: true,
+ title: 'all filters with "0" as string'
+ }
+ ];
+
+ cases.forEach(function (item) {
+ it(item.title, function () {
+ $httpBackend.expectGET(/\/api\/v1\/users/).respond(200);
+ scope.filters.name = item.currentNameFilter;
+ scope.filters.status = item.currentActiveFilter;
+ scope.filters.type = item.currentTypeFilter;
+ scope.$digest();
+ expect(scope.isNotEmptyFilter).toEqual(item.isNotEmptyFilter);
+ });
+ });
+
+ });
+
+ });
+
+});
http://git-wip-us.apache.org/repos/asf/ambari/blob/99b19e58/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/users/UsersListCtrl_test.js
----------------------------------------------------------------------
diff --git a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/users/UsersListCtrl_test.js b/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/users/UsersListCtrl_test.js
deleted file mode 100644
index 9d6cd54..0000000
--- a/ambari-admin/src/main/resources/ui/admin-web/test/unit/controllers/users/UsersListCtrl_test.js
+++ /dev/null
@@ -1,383 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file 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.
- */
-
-describe('#Cluster', function () {
-
- describe('UsersListCtrl', function() {
-
- var scope, ctrl, $t, $httpBackend;
-
- beforeEach(module('ambariAdminConsole', function () {}));
-
- beforeEach(inject(function($rootScope, $controller, _$translate_, _$httpBackend_) {
- scope = $rootScope.$new();
- $t = _$translate_.instant;
- $httpBackend = _$httpBackend_;
- ctrl = $controller('UsersListCtrl', {
- $scope: scope
- });
- }));
-
- describe('#clearFilters()', function () {
-
- it('should clear filters and reset pagination', function () {
- scope.currentPage = 2;
- scope.currentNameFilter = 'a';
- scope.currentActiveFilter = {
- label: $t('common.local'),
- value: false
- };
- scope.currentTypeFilter = {
- label: $t('common.local'),
- value: 'LOCAL'
- };
- scope.adminFilter = true;
- scope.clearFilters();
- expect(scope.currentNameFilter).toEqual('');
- expect(scope.currentActiveFilter).toEqual({
- label: $t('common.all'),
- value: '*'
- });
- expect(scope.currentTypeFilter).toEqual({
- label: $t('common.all'),
- value: '*'
- });
- expect(scope.currentPage).toEqual(1);
- expect(scope.adminFilter).toBe(false);
- });
-
- });
-
- describe('#isNotEmptyFilter', function () {
-
- var cases = [
- {
- currentNameFilter: '',
- currentTypeFilter: null,
- currentActiveFilter: null,
- isNotEmptyFilter: false,
- adminFilter: false,
- title: 'no filters'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: false,
- isNotEmptyFilter: false,
- title: 'empty filters'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'name filter'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'name filter with "0" as string'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'type filter'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'activity filter'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'admin filter'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'name and type filters'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'name and activity filters'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'name and admin filters'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'name and type filters with "0" as string'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'name and activity filters with "0" as string'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'name and admin filters with "0" as string'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'type and activity filters'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'type and admin filters'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'activity and admin filters'
- },
- {
- currentNameFilter: '',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters except name one'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters except type one'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters except activity one'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'all filters except admin one'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: '*'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters with "0" as string except type one'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: '*'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters with "0" as string except activity one'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: 'LOCAL'
- },
- currentActiveFilter: {
- value: false
- },
- adminFilter: false,
- isNotEmptyFilter: true,
- title: 'all filters with "0" as string except admin one'
- },
- {
- currentNameFilter: 'a',
- currentTypeFilter: {
- value: false
- },
- currentActiveFilter: {
- value: 'LOCAL'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters'
- },
- {
- currentNameFilter: '0',
- currentTypeFilter: {
- value: false
- },
- currentActiveFilter: {
- value: 'LOCAL'
- },
- adminFilter: true,
- isNotEmptyFilter: true,
- title: 'all filters with "0" as string'
- }
- ];
-
- cases.forEach(function (item) {
- it(item.title, function () {
- $httpBackend.expectGET(/\/api\/v1\/users/).respond(200);
- scope.currentNameFilter = item.currentNameFilter;
- scope.currentActiveFilter = item.currentActiveFilter;
- scope.currentTypeFilter = item.currentTypeFilter;
- scope.adminFilter = item.adminFilter;
- scope.$digest();
- expect(scope.isNotEmptyFilter).toEqual(item.isNotEmptyFilter);
- });
- });
-
- });
-
- });
-
-});
http://git-wip-us.apache.org/repos/asf/ambari/blob/99b19e58/ambari-admin/src/main/resources/ui/admin-web/test/unit/services/Utility_test.js
----------------------------------------------------------------------
diff --git a/ambari-admin/src/main/resources/ui/admin-web/test/unit/services/Utility_test.js b/ambari-admin/src/main/resources/ui/admin-web/test/unit/services/Utility_test.js
index 1b76dcf..7f67de4 100644
--- a/ambari-admin/src/main/resources/ui/admin-web/test/unit/services/Utility_test.js
+++ b/ambari-admin/src/main/resources/ui/admin-web/test/unit/services/Utility_test.js
@@ -25,7 +25,13 @@ describe('Utility Service', function () {
beforeEach(function () {
module('ambariAdminConsole', function ($provide) {
- $provide.value('$window', {});
+ $provide.value('$window', {
+ localStorage: {
+ getItem: function() {return '{}';},
+ setItem: function() {}
+ },
+ location: {}
+ });
});
inject(function (_Utility_, _$httpBackend_, $rootScope, $controller, _Cluster_, _$q_) {
Utility = _Utility_;
@@ -54,7 +60,7 @@ describe('Utility Service', function () {
httpBackend.whenGET(/\/api\/v1\/views.+/).respond(200, {
items: []
});
- httpBackend.whenGET("views/clusterInformation.html").respond(200, {});
+ httpBackend.whenGET("views/clusters/clusterInformation.html").respond(200, {});
});
});