Parcourir la source

AMBARI-12185. User is able to go back from deploy step of installer (onechiporenko)

Oleg Nechiporenko il y a 10 ans
Parent
commit
0254474a04

+ 2 - 7
ambari-web/app/controllers/installer.js

@@ -86,7 +86,7 @@ App.InstallerController = App.WizardController.extend({
     this.get('isStepDisabled').setEach('value', true);
     this.get('isStepDisabled').pushObject(Ember.Object.create({
       step: 0,
-      value: false
+      value: true
     }));
   },
   /**
@@ -705,12 +705,7 @@ App.InstallerController = App.WizardController.extend({
 
   setStepsEnable: function () {
     for (var i = 0; i <= this.totalSteps; i++) {
-      var step = this.get('isStepDisabled').findProperty('step', i);
-      if (i <= this.get('currentStep')) {
-        step.set('value', false);
-      } else {
-        step.set('value', true);
-      }
+      this.get('isStepDisabled').findProperty('step', i).set('value', i > this.get('currentStep'));
     }
   }.observes('currentStep'),
 

+ 2 - 2
ambari-web/app/routes/installer.js

@@ -371,9 +371,9 @@ module.exports = Em.Route.extend(App.RouterRedirections, {
       console.log('in installer.step9:connectOutlets');
       var controller = router.get('installerController'),
           wizardStep9Controller = router.get('wizardStep9Controller');
-      controller.setCurrentStep('9');
       controller.loadAllPriorSteps().done(function () {
         wizardStep9Controller.loadDoServiceChecksFlag().done(function () {
+          controller.setCurrentStep('9');
           if (!App.get('testMode')) {
             controller.setLowerStepsDisable(9);
           }
@@ -427,9 +427,9 @@ module.exports = Em.Route.extend(App.RouterRedirections, {
     connectOutlets: function (router, context) {
       console.log('in installer.step10:connectOutlets');
       var controller = router.get('installerController');
-      controller.setCurrentStep('10');
       controller.loadAllPriorSteps().done(function () {
         if (!App.get('testMode')) {
+          controller.setCurrentStep('10');
           controller.setLowerStepsDisable(10);
         }
         controller.connectOutlet('wizardStep10', controller.get('content'));

+ 11 - 0
ambari-web/test/controllers/installer_test.js

@@ -26,6 +26,17 @@ describe('App.InstallerController', function () {
 
   var installerController = App.InstallerController.create();
 
+  describe('#init', function () {
+    var c;
+    beforeEach(function () {
+      c = App.InstallerController.create({});
+    });
+    it('all steps are disabled by default', function () {
+      expect(c.get('isStepDisabled.length') > 0 ).to.be.ok;
+      expect(c.get('isStepDisabled').everyProperty('value', true)).to.be.ok;
+    });
+  });
+
   describe('#loadStacksVersionsSuccessCallback', function() {
     beforeEach(function () {
       sinon.stub(App.store, 'commit', Em.K);