// deno-fmt-ignore-file // deno-lint-ignore-file // Copyright Joyent and Node contributors. All rights reserved. MIT license. // Taken from Node 20.11.1 // This file is automatically generated by `tests/node_compat/runner/setup.ts`. Do not modify this file manually. 'use strict'; const common = require('../common'); const assert = require('assert'); const { AsyncLocalStorage } = require('async_hooks'); // This is an asynclocalstorage variant of test-timers-clearImmediate.js const asyncLocalStorage = new AsyncLocalStorage(); const N = 3; function next() { const fn = common.mustCall(onImmediate); asyncLocalStorage.run(new Map(), common.mustCall(() => { const immediate = setImmediate(fn); const store = asyncLocalStorage.getStore(); store.set('immediate', immediate); })); } function onImmediate() { const store = asyncLocalStorage.getStore(); const immediate = store.get('immediate'); assert.strictEqual(immediate.constructor.name, 'Immediate'); clearImmediate(immediate); } for (let i = 0; i < N; i++) { next(); }