summaryrefslogtreecommitdiff
path: root/js/globals_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'js/globals_test.ts')
-rw-r--r--js/globals_test.ts26
1 files changed, 26 insertions, 0 deletions
diff --git a/js/globals_test.ts b/js/globals_test.ts
index 3085118de..42a055087 100644
--- a/js/globals_test.ts
+++ b/js/globals_test.ts
@@ -77,3 +77,29 @@ test(function DenoNamespaceImmutable(): void {
// @ts-ignore
assert(print === Deno.core.print);
});
+
+test(async function windowQueueMicrotask(): Promise<void> {
+ let resolve1: () => void | undefined;
+ let resolve2: () => void | undefined;
+ let microtaskDone = false;
+ const p1 = new Promise(
+ (res): void => {
+ resolve1 = (): void => {
+ microtaskDone = true;
+ res();
+ };
+ }
+ );
+ const p2 = new Promise(
+ (res): void => {
+ resolve2 = (): void => {
+ assert(microtaskDone);
+ res();
+ };
+ }
+ );
+ window.queueMicrotask(resolve1!);
+ setTimeout(resolve2!, 0);
+ await p1;
+ await p2;
+});