From f84c3677ac52a2ec0b1b47e7f43b0ddf360d5f6e Mon Sep 17 00:00:00 2001 From: KoalaDev <6156589+Shik3i@users.noreply.github.com> Date: Tue, 25 Aug 2026 01:26:26 +0200 Subject: [PATCH] test: close release review gaps --- CONTRIBUTING.md | 2 +- scripts/README.md | 2 +- tests/e2e/helpers/relay-process.mjs | 5 ++++- tests/e2e/room-sync.spec.mjs | 5 +++-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4fce658..d3943c5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,7 +22,7 @@ Please note that by participating in this project, you agree to abide by our [Co ### Prerequisites -- **Node.js** v20.9+ +- **Node.js** v20.19+ - **Docker** (for local relay server testing) ### Quick Start diff --git a/scripts/README.md b/scripts/README.md index 4b6a70b..c32a8a7 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -104,7 +104,7 @@ creates a draft release, publishes and smoke-tests the relay image, and only afterwards makes the GitHub Release public. The published-asset gate runs: ```bash -node scripts/verify-published-release.mjs v3.1.4 --repo Shik3i/KoalaSync +node scripts/verify-published-release.mjs vMAJOR.MINOR.PATCH --repo Shik3i/KoalaSync ``` The verifier requires the exact three release assets, validates SHA-256 hashes, diff --git a/tests/e2e/helpers/relay-process.mjs b/tests/e2e/helpers/relay-process.mjs index da5ef5e..1b14965 100644 --- a/tests/e2e/helpers/relay-process.mjs +++ b/tests/e2e/helpers/relay-process.mjs @@ -37,7 +37,10 @@ export async function startRelay(port) { throw new Error(`relay exited with ${child.exitCode}: ${output.join('')}`); } try { - const response = await fetch(`http://127.0.0.1:${port}/health`); + const remainingMs = Math.max(1, deadline - Date.now()); + const response = await fetch(`http://127.0.0.1:${port}/health`, { + signal: globalThis.AbortSignal.timeout(Math.min(1000, remainingMs)) + }); if (response.ok) return { child, output }; } catch (_error) { // Relay is still starting. diff --git a/tests/e2e/room-sync.spec.mjs b/tests/e2e/room-sync.spec.mjs index 1e639b8..d48a2df 100644 --- a/tests/e2e/room-sync.spec.mjs +++ b/tests/e2e/room-sync.spec.mjs @@ -51,9 +51,10 @@ async function connect(context, extensionId, { relayUrl, roomId, username }) { test('@race synchronizes two packed clients across relay and service-worker restarts', async ({ context, extensionId, baseURL }) => { test.setTimeout(120000); const second = await launchExtensionContext(); - const port = await reservePort(); - let relay = await startRelay(port); + let relay = null; try { + const port = await reservePort(); + relay = await startRelay(port); const firstUrl = `${baseURL}/pages/simple-player.html?client=first`; const secondUrl = `${baseURL}/pages/simple-player.html?client=second`; const firstPage = await context.newPage();