import { expect, test } from "bun:test"; test("exists", () => { expect(typeof URL !== "undefined").toBe(true); expect(typeof URLSearchParams !== "undefined").toBe(true); expect(typeof DOMException !== "undefined").toBe(true); expect(typeof Event !== "undefined").toBe(true); expect(typeof EventTarget !== "undefined").toBe(true); expect(typeof AbortController !== "undefined").toBe(true); expect(typeof AbortSignal !== "undefined").toBe(true); expect(typeof CustomEvent !== "undefined").toBe(true); expect(typeof Headers !== "undefined").toBe(true); expect(typeof ErrorEvent !== "undefined").toBe(true); expect(typeof CloseEvent !== "undefined").toBe(true); expect(typeof MessageEvent !== "undefined").toBe(true); expect(typeof TextEncoder !== "undefined").toBe(true); expect(typeof WebSocket !== "undefined").toBe(true); }); test("CloseEvent", () => { var event = new CloseEvent("close", { reason: "world" }); expect(event.type).toBe("close"); const target = new EventTarget(); var called = false; target.addEventListener("close", ({ type, reason }) => { expect(type).toBe("close"); expect(reason).toBe("world"); called = true; }); target.dispatchEvent(event); expect(called).toBe(true); }); test("MessageEvent", () => { var event = new MessageEvent("message", { data: "world" }); expect(event.type).toBe("message"); const target = new EventTarget(); var called = false; target.addEventListener("message", ({ type, data }) => { expect(type).toBe("message"); expect(data).toBe("world"); called = true; }); target.dispatchEvent(event); expect(called).toBe(true); });