From d9dbbf2359cf57af053fc039c463adaa9c94ecfe Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Wed, 6 Aug 2025 13:06:54 -0700 Subject: [PATCH] tests: Switch from medium to p-fifo. Signed-off-by: Anders Kaseorg --- package-lock.json | 33 ++++++++++++++++++++++----------- package.json | 2 +- tests/index.js | 10 +++++----- tests/test-add-organization.js | 12 ++++++------ tests/test-new-organization.js | 10 +++++----- 5 files changed, 39 insertions(+), 28 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9429a5ef..5523a3f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,8 +38,8 @@ "htmlhint": "^1.1.2", "i18n": "^0.15.1", "i18next-parser": "^9.3.0", - "medium": "^1.2.0", "node-json-db": "^1.3.0", + "p-fifo": "^1.0.0", "playwright-core": "^1.41.0-alpha-jan-9-2024", "pre-commit": "^1.2.2", "prettier": "^3.0.3", @@ -10999,16 +10999,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/medium": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/medium/-/medium-1.2.0.tgz", - "integrity": "sha512-qoL5cGyUTeRvzYTbGDoKLdCyV/QdKOKB7Cz+jLGKVMHZ1uRYd7WNIvyQxwSo4CyCShEkqsNkyeurWQHf+O1JNQ==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/meow": { "version": "13.2.0", "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", @@ -11856,6 +11846,27 @@ "node": ">=8" } }, + "node_modules/p-defer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-3.0.0.tgz", + "integrity": "sha512-ugZxsxmtTln604yeYd29EGrNhazN2lywetzpKhfmQjW/VJmhpDmWbiX+h0zL8V91R0UXkhb3KtPmyq9PZw3aYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-fifo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-fifo/-/p-fifo-1.0.0.tgz", + "integrity": "sha512-IjoCxXW48tqdtDFz6fqo5q1UfFVjjVZe8TC1QRflvNUJtNfCUhxOUw6MOVZhDPjqhSzc26xKdugsO17gmzd5+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-fifo": "^1.0.0", + "p-defer": "^3.0.0" + } + }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", diff --git a/package.json b/package.json index 30602328..8311da10 100644 --- a/package.json +++ b/package.json @@ -179,8 +179,8 @@ "htmlhint": "^1.1.2", "i18n": "^0.15.1", "i18next-parser": "^9.3.0", - "medium": "^1.2.0", "node-json-db": "^1.3.0", + "p-fifo": "^1.0.0", "playwright-core": "^1.41.0-alpha-jan-9-2024", "pre-commit": "^1.2.2", "prettier": "^3.0.3", diff --git a/tests/index.js b/tests/index.js index e8e32473..ccfb9f40 100644 --- a/tests/index.js +++ b/tests/index.js @@ -1,4 +1,4 @@ -import {chan, put, take} from "medium"; +import Fifo from "p-fifo"; import test from "tape"; import * as setup from "./setup.js"; @@ -8,11 +8,11 @@ test("app runs", async (t) => { setup.resetTestDataDirectory(); const app = await setup.createApp(); try { - const windows = chan(); - for (const win of app.windows()) put(windows, win); - app.on("window", (win) => put(windows, win)); + const windows = new Fifo(); + for (const win of app.windows()) windows.push(win); + app.on("window", (win) => windows.push(win)); - const mainWindow = await take(windows); + const mainWindow = await windows.shift(); t.equal(await mainWindow.title(), "Zulip"); await mainWindow.waitForSelector("#connect"); diff --git a/tests/test-add-organization.js b/tests/test-add-organization.js index afe2d161..6d7aef49 100644 --- a/tests/test-add-organization.js +++ b/tests/test-add-organization.js @@ -1,4 +1,4 @@ -import {chan, put, take} from "medium"; +import Fifo from "p-fifo"; import test from "tape"; import * as setup from "./setup.js"; @@ -8,11 +8,11 @@ test("add-organization", async (t) => { setup.resetTestDataDirectory(); const app = await setup.createApp(); try { - const windows = chan(); - for (const win of app.windows()) put(windows, win); - app.on("window", (win) => put(windows, win)); + const windows = new Fifo(); + for (const win of app.windows()) windows.push(win); + app.on("window", (win) => windows.push(win)); - const mainWindow = await take(windows); + const mainWindow = await windows.shift(); t.equal(await mainWindow.title(), "Zulip"); await mainWindow.fill( @@ -21,7 +21,7 @@ test("add-organization", async (t) => { ); await mainWindow.click("#connect"); - const orgWebview = await take(windows); + const orgWebview = await windows.shift(); await orgWebview.waitForSelector("#id_username"); } finally { await setup.endTest(app); diff --git a/tests/test-new-organization.js b/tests/test-new-organization.js index 52cb4f0e..0c8ba81d 100644 --- a/tests/test-new-organization.js +++ b/tests/test-new-organization.js @@ -1,4 +1,4 @@ -import {chan, put, take} from "medium"; +import Fifo from "p-fifo"; import test from "tape"; import * as setup from "./setup.js"; @@ -10,11 +10,11 @@ test("new-org-link", async (t) => { setup.resetTestDataDirectory(); const app = await setup.createApp(); try { - const windows = chan(); - for (const win of app.windows()) put(windows, win); - app.on("window", (win) => put(windows, win)); + const windows = new Fifo(); + for (const win of app.windows()) windows.push(win); + app.on("window", (win) => windows.push(win)); - const mainWindow = await take(windows); + const mainWindow = await windows.shift(); t.equal(await mainWindow.title(), "Zulip"); await mainWindow.click("#open-create-org-link");