test: avoid max port in browser server tests

This commit is contained in:
Peter Steinberger
2026-01-05 02:50:48 +01:00
parent 8791e46cf3
commit 849a008f34

View File

@@ -128,14 +128,17 @@ vi.mock("./screenshot.js", () => ({
})); }));
async function getFreePort(): Promise<number> { async function getFreePort(): Promise<number> {
return await new Promise((resolve, reject) => { while (true) {
const s = createServer(); const port = await new Promise<number>((resolve, reject) => {
s.once("error", reject); const s = createServer();
s.listen(0, "127.0.0.1", () => { s.once("error", reject);
const port = (s.address() as AddressInfo).port; s.listen(0, "127.0.0.1", () => {
s.close((err) => (err ? reject(err) : resolve(port))); const assigned = (s.address() as AddressInfo).port;
s.close((err) => (err ? reject(err) : resolve(assigned)));
});
}); });
}); if (port < 65535) return port;
}
} }
function makeResponse( function makeResponse(