Repository: ambari
Updated Branches:
  refs/heads/branch-2.1 486a40672 -> a539f3509


AMBARI-13799 Label in Express Upgrade Window shows "Downgrade" while doing 
upgrade after downgrade. (atkach)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/a539f350
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/a539f350
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/a539f350

Branch: refs/heads/branch-2.1
Commit: a539f35091c5173311de5ada4b4487819f6a23a5
Parents: 486a406
Author: Andrii Tkach <atk...@hortonworks.com>
Authored: Mon Nov 9 20:08:42 2015 +0200
Committer: Andrii Tkach <atk...@hortonworks.com>
Committed: Mon Nov 9 20:08:42 2015 +0200

----------------------------------------------------------------------
 .../global/background_operations_controller.js  |  6 +++-
 .../controllers/global/cluster_controller.js    |  2 ++
 .../main/admin/stack_and_upgrade_controller.js  |  2 +-
 ambari-web/app/utils/ajax/ajax.js               |  2 +-
 .../admin/stack_and_upgrade_controller_test.js  | 38 ++++++++++++++------
 5 files changed, 36 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/a539f350/ambari-web/app/controllers/global/background_operations_controller.js
----------------------------------------------------------------------
diff --git 
a/ambari-web/app/controllers/global/background_operations_controller.js 
b/ambari-web/app/controllers/global/background_operations_controller.js
index b78a35b..bc05284 100644
--- a/ambari-web/app/controllers/global/background_operations_controller.js
+++ b/ambari-web/app/controllers/global/background_operations_controller.js
@@ -207,11 +207,12 @@ App.BackgroundOperationsController = 
Em.Controller.extend({
     var currentRequestIds = [];
     var countIssued = this.get('operationsCount');
     var countGot = data.itemTotal;
+    var restoreUpgradeState = false;
 
     data.items.forEach(function (request) {
       if (this.isUpgradeRequest(request)) {
         if (!App.get('upgradeIsRunning') && !App.get('testMode')) {
-          App.router.get('clusterController').restoreUpgradeState();
+          restoreUpgradeState = true;
         }
         return;
       }
@@ -252,6 +253,9 @@ App.BackgroundOperationsController = Em.Controller.extend({
       }
       runningServices += ~~isRunning;
     }, this);
+    if (restoreUpgradeState) {
+      App.router.get('clusterController').restoreUpgradeState();
+    }
     this.removeOldRequests(currentRequestIds);
     this.set("allOperationsCount", runningServices);
     this.set('isShowMoreAvailable', countGot >= countIssued);

http://git-wip-us.apache.org/repos/asf/ambari/blob/a539f350/ambari-web/app/controllers/global/cluster_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/global/cluster_controller.js 
b/ambari-web/app/controllers/global/cluster_controller.js
index 9422729..37e45a4 100644
--- a/ambari-web/app/controllers/global/cluster_controller.js
+++ b/ambari-web/app/controllers/global/cluster_controller.js
@@ -286,6 +286,7 @@ App.ClusterController = Em.Controller.extend({
       var upgradeController = 
App.router.get('mainAdminStackAndUpgradeController');
       var lastUpgradeData = 
data.items.sortProperty('Upgrade.request_id').pop();
       var dbUpgradeState = App.db.get('MainAdminStackAndUpgrade', 
'upgradeState');
+      var fromVersion = 
App.RepositoryVersion.find().findProperty('repositoryVersion', 
lastUpgradeData.Upgrade.from_version);
 
       if (!Em.isNone(dbUpgradeState)) {
         App.set('upgradeState', dbUpgradeState);
@@ -298,6 +299,7 @@ App.ClusterController = Em.Controller.extend({
           upgradeState: lastUpgradeData.Upgrade.request_status,
           upgradeType: lastUpgradeData.Upgrade.upgrade_type,
           downgradeAllowed: lastUpgradeData.Upgrade.downgrade_allowed,
+          upgradeTypeDisplayName: fromVersion && 
fromVersion.get('displayName'),
           failuresTolerance: Em.Object.create({
             skipComponentFailures: lastUpgradeData.Upgrade.skip_failures,
             skipSCFailures: lastUpgradeData.Upgrade.skip_service_check_failures

http://git-wip-us.apache.org/repos/asf/ambari/blob/a539f350/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
----------------------------------------------------------------------
diff --git 
a/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js 
b/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
index 79b3432..9133125 100644
--- a/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
+++ b/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
@@ -241,7 +241,7 @@ App.MainAdminStackAndUpgradeController = 
Em.Controller.extend(App.LocalStorage,
   initDBProperties: function () {
     var props = this.getDBProperties(this.get('wizardStorageProperties'));
     Em.keys(props).forEach(function (k) {
-      if (props[k]) {
+      if (!Em.isNone(props[k])) {
         this.set(k, props[k]);
       }
     }, this);

http://git-wip-us.apache.org/repos/asf/ambari/blob/a539f350/ambari-web/app/utils/ajax/ajax.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/utils/ajax/ajax.js 
b/ambari-web/app/utils/ajax/ajax.js
index 2c48813..05841af 100644
--- a/ambari-web/app/utils/ajax/ajax.js
+++ b/ambari-web/app/utils/ajax/ajax.js
@@ -1291,7 +1291,7 @@ var urls = {
     'mock': '/data/clusters/info.json'
   },
   'cluster.load_last_upgrade': {
-    'real': 
'/clusters/{clusterName}/upgrades?fields=Upgrade/request_status,Upgrade/request_id,Upgrade/to_version,Upgrade/direction,Upgrade/upgrade_type,Upgrade/downgrade_allowed,Upgrade/skip_failures,Upgrade/skip_service_check_failures',
+    'real': 
'/clusters/{clusterName}/upgrades?fields=Upgrade/request_status,Upgrade/request_id,Upgrade/to_version,Upgrade/from_version,Upgrade/direction,Upgrade/upgrade_type,Upgrade/downgrade_allowed,Upgrade/skip_failures,Upgrade/skip_service_check_failures',
     'mock': '/data/stack_versions/upgrades.json'
   },
   'cluster.update_upgrade_version': {

http://git-wip-us.apache.org/repos/asf/ambari/blob/a539f350/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
----------------------------------------------------------------------
diff --git 
a/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js 
b/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
index 183dda8..45c4bd0 100644
--- 
a/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
+++ 
b/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
@@ -444,21 +444,37 @@ describe('App.MainAdminStackAndUpgradeController', 
function() {
 
   describe("#initDBProperties()", function() {
     before(function () {
-      sinon.stub(controller, 'getDBProperties', function (prop) {
-        var ret = {};
-        prop.forEach(function (k) {
-          ret[k] = k;
-        });
-        return ret;
-      });
+      this.mock = sinon.stub(controller, 'getDBProperties');
     });
     after(function () {
-      controller.getDBProperties.restore();
+      this.mock.restore();
+    });
+    it("set string properties", function () {
+      this.mock.returns({prop: 'string'});
+      controller.initDBProperties();
+      expect(controller.get('prop')).to.equal('string');
+    });
+    it("set number properties", function () {
+      this.mock.returns({prop: 0});
+      controller.initDBProperties();
+      expect(controller.get('prop')).to.equal(0);
+    });
+    it("set boolean properties", function () {
+      this.mock.returns({prop: false});
+      controller.initDBProperties();
+      expect(controller.get('prop')).to.be.false;
+    });
+    it("set undefined properties", function () {
+      this.mock.returns({prop: undefined});
+      controller.set('prop', 'value');
+      controller.initDBProperties();
+      expect(controller.get('prop')).to.equal('value');
     });
-    it("set properties", function () {
-      controller.set('wizardStorageProperties', ['prop1']);
+    it("set null properties", function () {
+      this.mock.returns({prop: null});
+      controller.set('prop', 'value');
       controller.initDBProperties();
-      expect(controller.get('prop1')).to.equal('prop1');
+      expect(controller.get('prop')).to.equal('value');
     });
   });
 

Reply via email to