summaryrefslogtreecommitdiffstats
path: root/testing/mochitest/tests/browser/browser_fail_add_task_uncaught_rejection.js
diff options
context:
space:
mode:
Diffstat (limited to 'testing/mochitest/tests/browser/browser_fail_add_task_uncaught_rejection.js')
-rw-r--r--testing/mochitest/tests/browser/browser_fail_add_task_uncaught_rejection.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/testing/mochitest/tests/browser/browser_fail_add_task_uncaught_rejection.js b/testing/mochitest/tests/browser/browser_fail_add_task_uncaught_rejection.js
new file mode 100644
index 0000000000..8a42740acb
--- /dev/null
+++ b/testing/mochitest/tests/browser/browser_fail_add_task_uncaught_rejection.js
@@ -0,0 +1,29 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+setExpectedFailuresForSelfTest(4);
+
+async function rejectOnNextTick(error) {
+ await Promise.resolve();
+
+ Promise.reject(error);
+}
+
+add_task(async function failWithoutError() {
+ await rejectOnNextTick(undefined);
+});
+
+add_task(async function failWithString() {
+ await rejectOnNextTick("This is a string");
+});
+
+add_task(async function failWithInt() {
+ await rejectOnNextTick(42);
+});
+
+// This one should display a stack trace
+add_task(async function failWithError() {
+ await rejectOnNextTick(new Error("This is an error"));
+});