diff --git a/__tests__/SetupStore-test.js b/__tests__/SetupStore-test.js index 8b5052e699..1410a883b0 100644 --- a/__tests__/SetupStore-test.js +++ b/__tests__/SetupStore-test.js @@ -73,7 +73,7 @@ describe('SetupStore', function () { pit('upgrades the vm if it exists and is out of date', function () { machine.exists.mockReturnValue(Promise.resolve(true)); - machine.state.mockReturnValue(Promise.resolve('Running')); + machine.state.mockReturnValue(Promise.resolve('Stopped')); machine.isoversion.mockReturnValue('1.0'); machine.stop.mockReturnValue(Promise.resolve()); machine.start.mockReturnValue(Promise.resolve()); @@ -88,9 +88,9 @@ describe('SetupStore', function () { return setupStore.steps().init.run(() => {}).then(() => { expect(machine.create).not.toBeCalled(); expect(machine.stop).toBeCalled(); + expect(machine.upgrade).toBeCalled(); expect(machine.regenerateCerts).toBeCalled(); expect(machine.start).toBeCalled(); - expect(machine.upgrade).toBeCalled(); }); }); }); diff --git a/src/SetupStore.js b/src/SetupStore.js index a0116a3ff9..bf7e9eadde 100644 --- a/src/SetupStore.js +++ b/src/SetupStore.js @@ -75,7 +75,9 @@ var _steps = [{ yield machine.create(); } return; - } else if (exists && (yield machine.state()) === 'Saved') { + } + + if ((yield machine.state()) === 'Saved') { yield virtualBox.wake(machine.name()); } @@ -85,8 +87,10 @@ var _steps = [{ yield machine.stop(); yield machine.upgrade(); } - yield machine.start(); - yield machine.regenerateCerts(); + if ((yield machine.state()) !== 'Running') { + yield machine.start(); + yield machine.regenerateCerts(); + } }) }];