// test/index.spec.ts import { createExecutionContext, env, SELF, waitOnExecutionContext, } from "cloudflare:test" import { describe, expect, it } from "vitest" import worker from "../src/index" // For now, you'll need to do something like this to get a correctly-typed // `Request` to pass to `worker.fetch()`. const IncomingRequest = Request describe("Hello World worker", () => { it("responds with Hello World! (unit style)", async () => { const request = new IncomingRequest("http://example.com") // Create an empty context to pass to `worker.fetch()`. const ctx = createExecutionContext() const response = await worker.fetch(request, env, ctx) // Wait for all `Promise`s passed to `ctx.waitUntil()` to settle before running test assertions await waitOnExecutionContext(ctx) expect(await response.text()).toMatchInlineSnapshot(`"Hello World!"`) }) it("responds with Hello World! (integration style)", async () => { const response = await SELF.fetch("https://example.com") expect(await response.text()).toMatchInlineSnapshot(`"Hello World!"`) }) })