From d53936eb7d3fe4cda8e06f7310e4c8f12702b413 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Wed, 20 Jul 2022 20:28:19 +0200 Subject: Reland "feat: add "unhandledrejection" event support" (#15211) --- cli/tests/integration/run_tests.rs | 5 +++++ cli/tests/testdata/unhandled_rejection.js | 11 +++++++++++ cli/tests/testdata/unhandled_rejection.js.out | 8 ++++++++ 3 files changed, 24 insertions(+) create mode 100644 cli/tests/testdata/unhandled_rejection.js create mode 100644 cli/tests/testdata/unhandled_rejection.js.out (limited to 'cli/tests') diff --git a/cli/tests/integration/run_tests.rs b/cli/tests/integration/run_tests.rs index 96e4cfce5..d477bb896 100644 --- a/cli/tests/integration/run_tests.rs +++ b/cli/tests/integration/run_tests.rs @@ -2782,3 +2782,8 @@ itest!(followup_dyn_import_resolved { args: "run --unstable --allow-read followup_dyn_import_resolves/main.ts", output: "followup_dyn_import_resolves/main.ts.out", }); + +itest!(unhandled_rejection { + args: "run --allow-read unhandled_rejection.js", + output: "unhandled_rejection.js.out", +}); diff --git a/cli/tests/testdata/unhandled_rejection.js b/cli/tests/testdata/unhandled_rejection.js new file mode 100644 index 000000000..352e861b4 --- /dev/null +++ b/cli/tests/testdata/unhandled_rejection.js @@ -0,0 +1,11 @@ +globalThis.addEventListener("unhandledrejection", (e) => { + console.log("unhandled rejection at:", e.promise, "reason:", e.reason); + e.preventDefault(); +}); + +function Foo() { + this.bar = Promise.reject(new Error("bar not available")); +} + +new Foo(); +Promise.reject(); diff --git a/cli/tests/testdata/unhandled_rejection.js.out b/cli/tests/testdata/unhandled_rejection.js.out new file mode 100644 index 000000000..4c41795ce --- /dev/null +++ b/cli/tests/testdata/unhandled_rejection.js.out @@ -0,0 +1,8 @@ +unhandled rejection at: Promise { + Error: bar not available + at new Foo (file:///[WILDCARD]/testdata/unhandled_rejection.js:7:29) + at file:///[WILDCARD]/testdata/unhandled_rejection.js:10:1 +} reason: Error: bar not available + at new Foo (file:///[WILDCARD]/testdata/unhandled_rejection.js:7:29) + at file:///[WILDCARD]/testdata/unhandled_rejection.js:10:1 +unhandled rejection at: Promise { undefined } reason: undefined -- cgit v1.2.3