You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by on...@apache.org on 2017/02/06 13:40:22 UTC
ambari git commit: AMBARI-19877. Confirmation for deleting services
show serviceName and not displayName (onechiporenko)
Repository: ambari
Updated Branches:
refs/heads/trunk 13f8f96b3 -> 9f2d1d9b6
AMBARI-19877. Confirmation for deleting services show serviceName and not displayName (onechiporenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/9f2d1d9b
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/9f2d1d9b
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/9f2d1d9b
Branch: refs/heads/trunk
Commit: 9f2d1d9b6ef7019919e4a6fd1bd80569eaf4e97b
Parents: 13f8f96
Author: Oleg Nechiporenko <on...@apache.org>
Authored: Mon Feb 6 13:57:39 2017 +0200
Committer: Oleg Nechiporenko <on...@apache.org>
Committed: Mon Feb 6 15:37:57 2017 +0200
----------------------------------------------------------------------
ambari-web/app/controllers/main/service/item.js | 15 ++++--
.../test/controllers/main/service/item_test.js | 54 ++++++++++++++++++--
2 files changed, 62 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/9f2d1d9b/ambari-web/app/controllers/main/service/item.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/service/item.js b/ambari-web/app/controllers/main/service/item.js
index 9758ac3..7010ab5 100644
--- a/ambari-web/app/controllers/main/service/item.js
+++ b/ambari-web/app/controllers/main/service/item.js
@@ -1531,10 +1531,17 @@ App.MainServiceItemController = Em.Controller.extend(App.SupportClientConfigsDow
},
confirmServiceDeletion: function() {
- var progressPopup = this.get('deleteServiceProgressPopup'),
- msg = this.get('interDependentServices.length')
- ? Em.I18n.t('services.service.delete.service.success.confirmation.plural').format(this.get('serviceNamesToDelete').join(','))
- : Em.I18n.t('services.service.delete.service.success.confirmation').format(this.get('content.serviceName'));
+ let serviceNames, msg;
+ if (this.get('interDependentServices.length')) {
+ serviceNames = this.get('serviceNamesToDelete').map(serviceName => App.format.role(serviceName, true)).join(', ');
+ msg = Em.I18n.t('services.service.delete.service.success.confirmation.plural').format(serviceNames);
+ }
+ else {
+ serviceNames = App.format.role(this.get('content.serviceName'), true);
+ msg = Em.I18n.t('services.service.delete.service.success.confirmation').format(serviceNames);
+ }
+
+ var progressPopup = this.get('deleteServiceProgressPopup');
if (progressPopup) {
progressPopup.onClose();
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/9f2d1d9b/ambari-web/test/controllers/main/service/item_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/controllers/main/service/item_test.js b/ambari-web/test/controllers/main/service/item_test.js
index b582e86..302a9a5 100644
--- a/ambari-web/test/controllers/main/service/item_test.js
+++ b/ambari-web/test/controllers/main/service/item_test.js
@@ -28,7 +28,7 @@ require('controllers/main/service/reassign_controller');
require('controllers/main/service/item');
var batchUtils = require('utils/batch_scheduled_requests');
var testHelpers = require('test/helpers');
-var stackSerivceModel = {
+var stackServiceModel = {
'HDFS': Em.Object.create({
serviceName: 'HDFS',
requiredServices: ['ZOOKEEPER']
@@ -1352,7 +1352,7 @@ describe('App.MainServiceItemController', function () {
beforeEach(function() {
mainServiceItemController = App.MainServiceItemController.create({});
sinon.stub(App.StackService, 'find', function (serviceName) {
- return stackSerivceModel[serviceName];
+ return stackServiceModel[serviceName];
});
this.mockService = sinon.stub(App.Service, 'find');
});
@@ -1644,7 +1644,7 @@ describe('App.MainServiceItemController', function () {
beforeEach(function() {
sinon.stub(App.StackService, 'find', function (serviceName) {
- return stackSerivceModel[serviceName];
+ return stackServiceModel[serviceName];
});
mainServiceItemController = App.MainServiceItemController.create({
content: {}
@@ -1802,6 +1802,54 @@ describe('App.MainServiceItemController', function () {
});
});
+ describe('#confirmServiceDeletion', function () {
+
+ var mainServiceItemController = App.MainServiceItemController.create({deleteServiceProgressPopup: null});
+
+ [
+ {
+ content: Em.Object.create({serviceName: 'DRUID'}),
+ stackServices: [
+ Em.Object.create({id: 'DRUID', displayName: 'Druid', serviceName: 'DRUID', requiredServices: []})
+ ],
+ m: 'No required services',
+ e: Em.I18n.t('services.service.delete.service.success.confirmation').format('Druid')
+ },
+ {
+ content: Em.Object.create({serviceName: 'MAPREDUCE2'}),
+ stackServices: [
+ Em.Object.create({id: 'MAPREDUCE2', serviceName: 'MAPREDUCE2', requiredServices: ['YARN'], displayName: 'MapReduce2'}),
+ Em.Object.create({id: 'YARN', serviceName: 'YARN', requiredServices: ['MAPREDUCE2'], displayName: 'YARN'}),
+ ],
+ m: 'One required service',
+ e: Em.I18n.t('services.service.delete.service.success.confirmation.plural').format('MapReduce2, YARN')
+ }
+ ].forEach(function(test) {
+ describe(test.m, function () {
+
+ beforeEach(function () {
+ sinon.stub(App.StackService, 'find', function (id) {
+ return arguments.length ? test.stackServices.findProperty('id', id) : test.stackServices;
+ });
+ sinon.spy(App, 'showAlertPopup');
+ mainServiceItemController.set('content', test.content);
+ mainServiceItemController.confirmServiceDeletion();
+ });
+
+ afterEach(function () {
+ App.StackService.find.restore();
+ App.showAlertPopup.restore();
+ });
+
+ it('Popup body has display service names', function () {
+ expect(App.showAlertPopup.args[0][1]).to.be.equal(test.e);
+ });
+
+ });
+ });
+
+ });
+
describe("#isRangerPluginEnabled()", function () {
var mainServiceItemController;