diff options
Diffstat (limited to 'js/src/jit-test/tests/debug/bug1814020.js')
-rw-r--r-- | js/src/jit-test/tests/debug/bug1814020.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/bug1814020.js b/js/src/jit-test/tests/debug/bug1814020.js new file mode 100644 index 0000000000..7036616347 --- /dev/null +++ b/js/src/jit-test/tests/debug/bug1814020.js @@ -0,0 +1,26 @@ +const dbg = newGlobal({ sameZoneAs: this }).Debugger(this); + +async function* inspectingGenerator() { + await undefined; + + const frame = dbg.getNewestFrame(); + const asyncPromise = frame.asyncPromise; + assertEq(asyncPromise.getPromiseReactions().length, 0); +} + +async function* emptyGenerator() {} + +const gen = inspectingGenerator(); +const inspectingGenPromise = gen.next(); + +const emptyGen = emptyGenerator(); +// Close generator. +emptyGen.next(); + +// Creates a reaction record on the inspectingGenPromise which points to the +// closed emptyGen generator. +emptyGen.return(inspectingGenPromise); + +// Execute the inspectingGenerator() code after `await`, which gets the +// promise reactions (potentially including the closed emptyGen generator) +drainJobQueue();
\ No newline at end of file |