Skip to content

Commit b800775

Browse files
committed
chore: migrate more fixtures
1 parent 3c62aaf commit b800775

7 files changed

Lines changed: 93 additions & 89 deletions

File tree

fixtures/d1-read-replication-app/tests/index.test.ts

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
import { resolve } from "node:path";
22
import { afterAll, beforeAll, describe, it } from "vitest";
3-
import { runWranglerDev } from "../../shared/src/run-wrangler-long-lived";
3+
import { createServer } from "wrangler";
44

5-
describe("d1-sessions-api - getBookmark", () => {
6-
describe("with wrangler dev", () => {
7-
let ip: string, port: number, stop: (() => Promise<unknown>) | undefined;
5+
const server = createServer({
6+
root: resolve(__dirname, ".."),
7+
workers: [{ configPath: "wrangler.jsonc" }],
8+
});
89

10+
describe("d1-sessions-api - getBookmark", () => {
11+
describe("with createServer", () => {
912
beforeAll(async () => {
10-
({ ip, port, stop } = await runWranglerDev(resolve(__dirname, ".."), [
11-
"--port=0",
12-
"--inspector-port=0",
13-
]));
13+
await server.listen();
1414
});
1515

1616
afterAll(async () => {
17-
await stop?.();
17+
await server.close();
1818
});
1919

2020
it("should respond with bookmarks before and after a session query", async ({
2121
expect,
2222
}) => {
23-
let response = await fetch(`http://${ip}:${port}`);
23+
let response = await server.fetch("/");
2424
let parsed = await response.json();
2525
expect(response.status).toBe(200);
2626
expect(parsed).toMatchObject({
@@ -30,8 +30,8 @@ describe("d1-sessions-api - getBookmark", () => {
3030
});
3131

3232
it("should progress the bookmark after a write", async ({ expect }) => {
33-
let response = await fetch(
34-
`http://${ip}:${port}?q=${encodeURIComponent("create table if not exists users1(id text);")}`
33+
let response = await server.fetch(
34+
`/?q=${encodeURIComponent("create table if not exists users1(id text);")}`
3535
);
3636
let parsed = (await response.json()) as {
3737
bookmarkAfter: string;
@@ -54,8 +54,8 @@ describe("d1-sessions-api - getBookmark", () => {
5454
let responses = [];
5555

5656
for (let i = 0; i < 10; i++) {
57-
const resp = await fetch(
58-
`http://${ip}:${port}?q=${encodeURIComponent(`create table if not exists users${i}(id text);`)}`
57+
const resp = await server.fetch(
58+
`/?q=${encodeURIComponent(`create table if not exists users${i}(id text);`)}`
5959
);
6060
let parsed = (await resp.json()) as {
6161
bookmarkAfter: string;

fixtures/dynamic-worker-loading/tests/index.test.ts

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
import { readFileSync } from "node:fs";
22
import { join, resolve } from "node:path";
3-
import { fetch } from "undici";
43
import { afterAll, beforeAll, describe, it } from "vitest";
5-
import { runWranglerDev } from "../../shared/src/run-wrangler-long-lived";
4+
import { createServer } from "wrangler";
65

7-
describe("dynamic worker loading", () => {
8-
let ip: string, port: number, stop: (() => Promise<unknown>) | undefined;
6+
const server = createServer({
7+
root: resolve(__dirname, ".."),
8+
workers: [{ configPath: "wrangler.jsonc" }],
9+
});
910

11+
describe("dynamic worker loading", () => {
1012
beforeAll(async () => {
11-
({ ip, port, stop } = await runWranglerDev(resolve(__dirname, ".."), [
12-
"--port=0",
13-
"--inspector-port=0",
14-
]));
13+
await server.listen();
1514
});
1615

1716
afterAll(async () => {
18-
await stop?.();
17+
await server.close();
1918
});
2019

2120
it("should respond with response from dynamic worker", async ({ expect }) => {
22-
let response = await fetch(`http://${ip}:${port}/my-worker`);
21+
let response = await server.fetch("/my-worker");
2322
let text = await response.text();
2423
expect(response.status).toBe(200);
2524
expect(text).toMatchInlineSnapshot(
@@ -28,7 +27,7 @@ describe("dynamic worker loading", () => {
2827
});
2928

3029
it("should load different worker if ID changes", async ({ expect }) => {
31-
let response = await fetch(`http://${ip}:${port}/my-other-worker`);
30+
let response = await server.fetch("/my-other-worker");
3231
let text = await response.text();
3332
expect(response.status).toBe(200);
3433
expect(text).toMatchInlineSnapshot(

fixtures/import-npm/packages/import-example/tests/index.test.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
import { resolve } from "path";
2-
import { fetch } from "undici";
32
import { afterAll, beforeAll, describe, it } from "vitest";
4-
import { runWranglerDev } from "../../../../shared/src/run-wrangler-long-lived";
3+
import { createServer } from "wrangler";
54

6-
describe("wrangler correctly imports wasm files with npm resolution", () => {
7-
let ip: string, port: number, stop: (() => Promise<unknown>) | undefined;
5+
const server = createServer({
6+
root: resolve(__dirname, ".."),
7+
workers: [{ configPath: "wrangler.jsonc" }],
8+
});
89

10+
describe("wrangler correctly imports wasm files with npm resolution", () => {
911
beforeAll(async () => {
10-
({ ip, port, stop } = await runWranglerDev(resolve(__dirname, ".."), [
11-
"--port=0",
12-
"--inspector-port=0",
13-
]));
12+
await server.listen();
1413
});
1514

1615
afterAll(async () => {
17-
await stop?.();
16+
await server.close();
1817
});
1918

2019
// if the worker compiles, is running, and returns 21 (7 * 3) we can assume that the wasm module was imported correctly
2120
it("responds", async ({ expect }) => {
22-
const response = await fetch(`http://${ip}:${port}/`);
21+
const response = await server.fetch("/");
2322
const text = await response.text();
2423
expect(text).toBe("21, 21");
2524
});

fixtures/import-wasm-example/tests/index.test.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
import { resolve } from "path";
2-
import { fetch } from "undici";
32
import { afterAll, beforeAll, describe, it } from "vitest";
4-
import { runWranglerDev } from "../../shared/src/run-wrangler-long-lived";
3+
import { createServer } from "wrangler";
54

6-
describe("wrangler correctly imports wasm files with npm resolution", () => {
7-
let ip: string, port: number, stop: (() => Promise<unknown>) | undefined;
5+
const server = createServer({
6+
root: resolve(__dirname, ".."),
7+
workers: [{ configPath: "wrangler.jsonc" }],
8+
});
89

10+
describe("wrangler correctly imports wasm files with npm resolution", () => {
911
beforeAll(async () => {
10-
({ ip, port, stop } = await runWranglerDev(resolve(__dirname, ".."), [
11-
"--port=0",
12-
"--inspector-port=0",
13-
]));
12+
await server.listen();
1413
});
1514

1615
afterAll(async () => {
17-
await stop?.();
16+
await server.close();
1817
});
1918

2019
// if the worker compiles, is running, and returns 21 (7 * 3) we can assume that the wasm module was imported correctly
2120
it("responds", async ({ expect }) => {
22-
const response = await fetch(`http://${ip}:${port}/`);
21+
const response = await server.fetch("/");
2322
const text = await response.text();
2423
expect(text).toBe("21, 21");
2524
});

fixtures/node-env/tests/node-env.test.ts

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,27 @@ import * as fs from "node:fs";
33
import * as path from "node:path";
44
import { Miniflare } from "miniflare";
55
import { describe, it, vi } from "vitest";
6-
import { runWranglerDev } from "../../shared/src/run-wrangler-long-lived";
6+
import { createServer } from "wrangler";
77

88
describe("`process.env.NODE_ENV` replacement in development", () => {
99
it("replaces `process.env.NODE_ENV` with `development` if it is `undefined`", async ({
1010
expect,
1111
}) => {
1212
vi.stubEnv("NODE_ENV", undefined);
13+
const server = createServer({
14+
root: path.resolve(__dirname, ".."),
15+
workers: [{ configPath: "wrangler.jsonc" }],
16+
});
1317

14-
const { ip, port, stop } = await runWranglerDev(
15-
path.resolve(__dirname, ".."),
16-
["--port=0", "--inspector-port=0"]
17-
);
18+
await server.listen();
1819

1920
await vi.waitFor(async () => {
20-
const response = await fetch(`http://${ip}:${port}/`);
21+
const response = await server.fetch("/");
2122
const text = await response.text();
2223
expect(text).toBe(`The value of process.env.NODE_ENV is "development"`);
2324
});
2425

25-
await stop();
26+
await server.close();
2627

2728
vi.unstubAllEnvs();
2829
});
@@ -31,19 +32,20 @@ describe("`process.env.NODE_ENV` replacement in development", () => {
3132
expect,
3233
}) => {
3334
vi.stubEnv("NODE_ENV", "some-value");
35+
const server = createServer({
36+
root: path.resolve(__dirname, ".."),
37+
workers: [{ configPath: "wrangler.jsonc" }],
38+
});
3439

35-
const { ip, port, stop } = await runWranglerDev(
36-
path.resolve(__dirname, ".."),
37-
["--port=0", "--inspector-port=0"]
38-
);
40+
await server.listen();
3941

4042
await vi.waitFor(async () => {
41-
const response = await fetch(`http://${ip}:${port}/`);
43+
const response = await server.fetch("/");
4244
const text = await response.text();
4345
expect(text).toBe(`The value of process.env.NODE_ENV is "some-value"`);
4446
});
4547

46-
await stop();
48+
await server.close();
4749

4850
vi.unstubAllEnvs();
4951
});

fixtures/wildcard-modules/test/index.test.ts

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,24 @@
11
import childProcess from "node:child_process";
22
import { existsSync } from "node:fs";
33
import fs from "node:fs/promises";
4-
import os from "node:os";
4+
import os, { tmpdir } from "node:os";
55
import path from "node:path";
66
import { setTimeout } from "node:timers/promises";
77
import { removeDir } from "@fixture/shared/src/fs-helpers";
88
import { fetch } from "undici";
99
import { afterAll, assert, beforeAll, describe, test } from "vitest";
10-
import {
11-
runWranglerDev,
12-
wranglerEntryPath,
13-
} from "../../shared/src/run-wrangler-long-lived";
10+
import { createServer, type WorkerServer } from "wrangler";
11+
import { wranglerEntryPath } from "../../shared/src/run-wrangler-long-lived";
1412

1513
async function getTmpDir() {
1614
return fs.mkdtemp(path.join(os.tmpdir(), "wrangler-modules-"));
1715
}
1816

19-
type WranglerDev = Awaited<ReturnType<typeof runWranglerDev>>;
20-
function get(worker: WranglerDev, pathname: string) {
21-
const url = `http://${worker.ip}:${worker.port}${pathname}`;
17+
function get(server: WorkerServer, pathname: string) {
2218
// Disable Miniflare's pretty error page, so we can parse errors as JSON
23-
return fetch(url, { headers: { "MF-Disable-Pretty-Error": "true" } });
19+
return server.fetch(pathname, {
20+
headers: { "MF-Disable-Pretty-Error": "true" },
21+
});
2422
}
2523

2624
async function retry<T>(closure: () => Promise<T>, max = 30): Promise<T> {
@@ -37,7 +35,8 @@ async function retry<T>(closure: () => Promise<T>, max = 30): Promise<T> {
3735

3836
describe("wildcard imports: dev", () => {
3937
let tmpDir: string;
40-
let worker: WranglerDev;
38+
let server: WorkerServer;
39+
let url: URL;
4140

4241
beforeAll(async () => {
4342
// Copy over files to a temporary directory as we'll be modifying them
@@ -52,31 +51,36 @@ describe("wildcard imports: dev", () => {
5251
path.join(tmpDir, "wrangler.jsonc")
5352
);
5453

55-
worker = await runWranglerDev(tmpDir, ["--port=0", "--inspector-port=0"]);
54+
server = createServer({
55+
root: tmpDir,
56+
workers: [{ configPath: "wrangler.jsonc" }],
57+
watch: true,
58+
});
59+
({ url } = await server.listen());
5660
});
5761
afterAll(async () => {
58-
await worker.stop();
62+
await server.close();
5963
removeDir(tmpDir, { fireAndForget: true });
6064
});
6165

6266
test("supports bundled modules", async ({ expect }) => {
63-
const res = await get(worker, "/dep");
67+
const res = await get(server, "/dep");
6468
expect(await res.text()).toBe("bundled");
6569
});
6670
test("supports text modules", async ({ expect }) => {
67-
const res = await get(worker, "/text");
71+
const res = await get(server, "/text");
6872
expect(await res.text()).toBe("test\n");
6973
});
7074
test("supports dynamic imports", async ({ expect }) => {
71-
const res = await get(worker, "/dynamic");
75+
const res = await get(server, "/dynamic");
7276
expect(await res.text()).toBe("dynamic");
7377
});
7478
test("supports commonjs lazy imports", async ({ expect }) => {
75-
const res = await get(worker, "/common");
79+
const res = await get(server, "/common");
7680
expect(await res.text()).toBe("common");
7781
});
7882
test("supports variable dynamic imports", async ({ expect }) => {
79-
const res = await get(worker, "/lang/en");
83+
const res = await get(server, "/lang/en");
8084
expect(await res.text()).toBe("hello");
8185
});
8286

@@ -89,14 +93,16 @@ describe("wildcard imports: dev", () => {
8993
'export default "new dynamic";'
9094
);
9195
await retry(async () => {
92-
const res = await get(worker, "/dynamic");
96+
const res = await get(server, "/dynamic");
9397
assert.strictEqual(await res.text(), "new dynamic");
9498
});
9599

96100
// Delete dynamically imported file
97101
await fs.rm(path.join(srcDir, "lang", "en.js"));
98102
const res = await retry(async () => {
99-
const res = await get(worker, "/lang/en");
103+
const res = await fetch(new URL("/lang/en", url), {
104+
headers: { "MF-Disable-Pretty-Error": "true" },
105+
});
100106
assert.strictEqual(res.status, 500);
101107
return res;
102108
});
@@ -110,7 +116,7 @@ describe("wildcard imports: dev", () => {
110116
'export default { hello: "hey" };'
111117
);
112118
await retry(async () => {
113-
const res = await get(worker, "/lang/en/us");
119+
const res = await get(server, "/lang/en/us");
114120
assert.strictEqual(await res.text(), "hey");
115121
});
116122

@@ -120,7 +126,7 @@ describe("wildcard imports: dev", () => {
120126
'export default { hello: "bye" };'
121127
);
122128
await retry(async () => {
123-
const res = await get(worker, "/lang/en/us");
129+
const res = await get(server, "/lang/en/us");
124130
assert.strictEqual(await res.text(), "bye");
125131
});
126132
});

fixtures/worker-app/tests/undrained-body.test.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
import { resolve } from "path";
2-
import { fetch } from "undici";
32
import { afterAll, beforeAll, describe, it } from "vitest";
4-
import { runWranglerDev } from "../../shared/src/run-wrangler-long-lived";
3+
import { createServer } from "wrangler";
54

6-
describe("wrangler dev", () => {
7-
let ip: string, port: number, stop: (() => Promise<unknown>) | undefined;
5+
const server = createServer({
6+
root: resolve(__dirname, ".."),
7+
workers: [{ configPath: "wrangler.jsonc" }],
8+
});
89

10+
describe("wrangler dev", () => {
911
beforeAll(async () => {
10-
({ ip, port, stop } = await runWranglerDev(resolve(__dirname, ".."), [
11-
"--port=0",
12-
"--inspector-port=0",
13-
]));
12+
await server.listen();
1413
});
1514

1615
afterAll(async () => {
17-
await stop?.();
16+
await server.close();
1817
});
1918

2019
// https://github.com/cloudflare/workers-sdk/issues/5095
@@ -27,7 +26,7 @@ describe("wrangler dev", () => {
2726

2827
const body = new Uint8Array(2_000);
2928
for (let i = 0; i < COUNT; i++) {
30-
const response = await fetch(`http://${ip}:${port}/random`, {
29+
const response = await server.fetch("/random", {
3130
method: "POST",
3231
body,
3332
});

0 commit comments

Comments
 (0)