From eb91cd33befd0e4e525ea90287de957141e1839d Mon Sep 17 00:00:00 2001 From: Bogdan Date: Sat, 25 Feb 2017 15:05:29 +0200 Subject: [PATCH] [Copy] Diff between user cancellation and failure --- platform/entanglement/src/actions/AbstractComposeAction.js | 2 ++ platform/entanglement/src/actions/CopyAction.js | 4 ++++ .../entanglement/test/actions/AbstractComposeActionSpec.js | 4 ++-- platform/entanglement/test/actions/CopyActionSpec.js | 4 ++-- platform/entanglement/test/actions/LinkActionSpec.js | 4 ++-- platform/entanglement/test/actions/MoveActionSpec.js | 4 ++-- 6 files changed, 14 insertions(+), 8 deletions(-) diff --git a/platform/entanglement/src/actions/AbstractComposeAction.js b/platform/entanglement/src/actions/AbstractComposeAction.js index 943c2adb0a..4373fe2ca3 100644 --- a/platform/entanglement/src/actions/AbstractComposeAction.js +++ b/platform/entanglement/src/actions/AbstractComposeAction.js @@ -141,6 +141,8 @@ define( currentParent ).then(function (newParentObj) { return composeService.perform(object, newParentObj); + }, function () { + return Promise.reject({ message: "cancelled" }); }); }; diff --git a/platform/entanglement/src/actions/CopyAction.js b/platform/entanglement/src/actions/CopyAction.js index 6388c25b74..0c2e241be2 100644 --- a/platform/entanglement/src/actions/CopyAction.js +++ b/platform/entanglement/src/actions/CopyAction.js @@ -117,6 +117,10 @@ define( } function error(errorDetails) { + if (errorDetails && (errorDetails.message === "cancelled")) { + return; + } + var errorDialog, errorMessage = { title: "Error copying objects.", diff --git a/platform/entanglement/test/actions/AbstractComposeActionSpec.js b/platform/entanglement/test/actions/AbstractComposeActionSpec.js index 80fde42748..1f4b70362e 100644 --- a/platform/entanglement/test/actions/AbstractComposeActionSpec.js +++ b/platform/entanglement/test/actions/AbstractComposeActionSpec.js @@ -157,9 +157,9 @@ define( ); }); - it("waits for location from user", function () { + it("waits for location and handles cancellation by user", function () { expect(locationServicePromise.then) - .toHaveBeenCalledWith(jasmine.any(Function)); + .toHaveBeenCalledWith(jasmine.any(Function), jasmine.any(Function)); }); it("copies object to selected location", function () { diff --git a/platform/entanglement/test/actions/CopyActionSpec.js b/platform/entanglement/test/actions/CopyActionSpec.js index 380d5ebd18..918f73d7f4 100644 --- a/platform/entanglement/test/actions/CopyActionSpec.js +++ b/platform/entanglement/test/actions/CopyActionSpec.js @@ -180,9 +180,9 @@ define( ); }); - it("waits for location from user", function () { + it("waits for location and handles cancellation by user", function () { expect(locationServicePromise.then) - .toHaveBeenCalledWith(jasmine.any(Function)); + .toHaveBeenCalledWith(jasmine.any(Function), jasmine.any(Function)); }); it("copies object to selected location", function () { diff --git a/platform/entanglement/test/actions/LinkActionSpec.js b/platform/entanglement/test/actions/LinkActionSpec.js index f7930bf0dd..d84b993e24 100644 --- a/platform/entanglement/test/actions/LinkActionSpec.js +++ b/platform/entanglement/test/actions/LinkActionSpec.js @@ -133,9 +133,9 @@ define( ); }); - it("waits for location from user", function () { + it("waits for location and handles cancellation by user", function () { expect(locationServicePromise.then) - .toHaveBeenCalledWith(jasmine.any(Function)); + .toHaveBeenCalledWith(jasmine.any(Function), jasmine.any(Function)); }); it("links object to selected location", function () { diff --git a/platform/entanglement/test/actions/MoveActionSpec.js b/platform/entanglement/test/actions/MoveActionSpec.js index bc5398d599..ff65e3f444 100644 --- a/platform/entanglement/test/actions/MoveActionSpec.js +++ b/platform/entanglement/test/actions/MoveActionSpec.js @@ -133,9 +133,9 @@ define( ); }); - it("waits for location from user", function () { + it("waits for location and handles cancellation by user", function () { expect(locationServicePromise.then) - .toHaveBeenCalledWith(jasmine.any(Function)); + .toHaveBeenCalledWith(jasmine.any(Function), jasmine.any(Function)); }); it("moves object to selected location", function () {