diff options
Diffstat (limited to 'toolkit/mozapps/webextensions/test/xpcshell/test_XPIcancel.js')
-rw-r--r-- | toolkit/mozapps/webextensions/test/xpcshell/test_XPIcancel.js | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/toolkit/mozapps/webextensions/test/xpcshell/test_XPIcancel.js b/toolkit/mozapps/webextensions/test/xpcshell/test_XPIcancel.js deleted file mode 100644 index d733778a5..000000000 --- a/toolkit/mozapps/webextensions/test/xpcshell/test_XPIcancel.js +++ /dev/null @@ -1,66 +0,0 @@ -/* Any copyright is dedicated to the Public Domain. - * http://creativecommons.org/publicdomain/zero/1.0/ - */ - -// Test the cancellable doing/done/cancelAll API in XPIProvider - -var scope = Components.utils.import("resource://gre/modules/addons/XPIProvider.jsm"); -var XPIProvider = scope.XPIProvider; - -function run_test() { - // Check that cancelling with nothing in progress doesn't blow up - XPIProvider.cancelAll(); - - // Check that a basic object gets cancelled - let getsCancelled = { - isCancelled: false, - cancel: function () { - if (this.isCancelled) - do_throw("Already cancelled"); - this.isCancelled = true; - } - }; - XPIProvider.doing(getsCancelled); - XPIProvider.cancelAll(); - do_check_true(getsCancelled.isCancelled); - - // Check that if we complete a cancellable, it doesn't get cancelled - let doesntGetCancelled = { - cancel: () => do_throw("This should not have been cancelled") - }; - XPIProvider.doing(doesntGetCancelled); - do_check_true(XPIProvider.done(doesntGetCancelled)); - XPIProvider.cancelAll(); - - // A cancellable that adds a cancellable - getsCancelled.isCancelled = false; - let addsAnother = { - isCancelled: false, - cancel: function () { - if (this.isCancelled) - do_throw("Already cancelled"); - this.isCancelled = true; - XPIProvider.doing(getsCancelled); - } - } - XPIProvider.doing(addsAnother); - XPIProvider.cancelAll(); - do_check_true(addsAnother.isCancelled); - do_check_true(getsCancelled.isCancelled); - - // A cancellable that removes another. This assumes that Set() iterates in the - // order that members were added - let removesAnother = { - isCancelled: false, - cancel: function () { - if (this.isCancelled) - do_throw("Already cancelled"); - this.isCancelled = true; - XPIProvider.done(doesntGetCancelled); - } - } - XPIProvider.doing(removesAnother); - XPIProvider.doing(doesntGetCancelled); - XPIProvider.cancelAll(); - do_check_true(removesAnother.isCancelled); -} |