[Save] Show blocking dialog

Show a blocking dialog while the save action is being performed.

Prevents users from pressing save a second time or performing
further actions while a save is in progress.

Fixes https://github.jpl.nasa.gov/MissionControl/vista/issues/362
This commit is contained in:
Pete Richards
2016-06-24 18:33:24 -07:00
parent 8bdf1e3072
commit 24e870a126
6 changed files with 107 additions and 14 deletions

View File

@@ -100,7 +100,9 @@ define(
mockDialogService = jasmine.createSpyObj(
"dialogService",
[
"getUserInput"
"getUserInput",
"showBlockingMessage",
"dismiss"
]
);
mockDialogService.getUserInput.andReturn(mockPromise(undefined));
@@ -169,6 +171,19 @@ define(
expect(mockDialogService.getUserInput).toHaveBeenCalled();
});
it("shows a blocking dialog while waiting for save", function () {
mockEditorCapability.save.andReturn(new Promise(function () {}));
action.perform();
expect(mockDialogService.showBlockingMessage).toHaveBeenCalled();
expect(mockDialogService.dismiss).not.toHaveBeenCalled();
});
it("hides the blocking dialog after saving", function () {
action.perform();
expect(mockDialogService.showBlockingMessage).toHaveBeenCalled();
expect(mockDialogService.dismiss).toHaveBeenCalled();
});
});
}
);