summaryrefslogtreecommitdiff
path: root/tests/specs/run/unhandled_rejection
diff options
context:
space:
mode:
Diffstat (limited to 'tests/specs/run/unhandled_rejection')
-rw-r--r--tests/specs/run/unhandled_rejection/__test__.jsonc4
-rw-r--r--tests/specs/run/unhandled_rejection/unhandled_rejection.ts13
-rw-r--r--tests/specs/run/unhandled_rejection/unhandled_rejection.ts.out9
3 files changed, 26 insertions, 0 deletions
diff --git a/tests/specs/run/unhandled_rejection/__test__.jsonc b/tests/specs/run/unhandled_rejection/__test__.jsonc
new file mode 100644
index 000000000..3a2229206
--- /dev/null
+++ b/tests/specs/run/unhandled_rejection/__test__.jsonc
@@ -0,0 +1,4 @@
+{
+ "args": "run --check unhandled_rejection.ts",
+ "output": "unhandled_rejection.ts.out"
+}
diff --git a/tests/specs/run/unhandled_rejection/unhandled_rejection.ts b/tests/specs/run/unhandled_rejection/unhandled_rejection.ts
new file mode 100644
index 000000000..388583434
--- /dev/null
+++ b/tests/specs/run/unhandled_rejection/unhandled_rejection.ts
@@ -0,0 +1,13 @@
+globalThis.addEventListener("unhandledrejection", (e) => {
+ console.log("unhandled rejection at:", e.promise, "reason:", e.reason);
+ e.preventDefault();
+});
+
+class Foo {
+ constructor() {
+ Promise.reject(new Error("bar not available"));
+ }
+}
+
+new Foo();
+Promise.reject();
diff --git a/tests/specs/run/unhandled_rejection/unhandled_rejection.ts.out b/tests/specs/run/unhandled_rejection/unhandled_rejection.ts.out
new file mode 100644
index 000000000..fc5a3915f
--- /dev/null
+++ b/tests/specs/run/unhandled_rejection/unhandled_rejection.ts.out
@@ -0,0 +1,9 @@
+[WILDCARD]
+unhandled rejection at: Promise {
+ <rejected> Error: bar not available
+ at new Foo (file:///[WILDCARD]/unhandled_rejection.ts:8:20)
+ at file:///[WILDCARD]/unhandled_rejection.ts:12:1
+} reason: Error: bar not available
+ at new Foo (file:///[WILDCARD]/unhandled_rejection.ts:8:20)
+ at file:///[WILDCARD]/unhandled_rejection.ts:12:1
+unhandled rejection at: Promise { <rejected> undefined } reason: undefined