Files
bun.sh/test/js/node/async_hooks/EventEmitterAsyncResource.test.ts
dave caruso 9b6dc49575 Implement AsyncLocalStorage (#3089)
* work to get async local storage working.

* a

* a

* everything but queueMicrotask

* sdfghj

* .

* finish

* tests

* test

* ok

* done

* im so stupid

* Upgrade WebKit

* refactor

* refactor

* changes requested

* oops

* cool

* fix runInAsyncScope
2023-07-19 17:20:00 -07:00

30 lines
759 B
TypeScript

import EventEmitter, { EventEmitterAsyncResource } from "events";
import { AsyncLocalStorage } from "async_hooks";
import { describe, test, expect } from "bun:test";
describe("EventEmitterAsyncResource", () => {
test("is an EventEmitter", () => {
const ee = new EventEmitterAsyncResource("test");
expect(ee).toBeInstanceOf(EventEmitterAsyncResource);
expect(ee).toBeInstanceOf(EventEmitter);
});
test("has context tracking", () => {
let ee;
const asl = new AsyncLocalStorage();
asl.run(123, () => {
ee = new EventEmitterAsyncResource("test");
});
let val;
ee.on("test", () => {
val = asl.getStore();
});
asl.run(456, () => {
ee.emit("test");
});
expect(val).toBe(123);
});
});