mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-10-31 01:00:47 +08:00
Co-authored-by: xphoniex <dj.2dixx@gmail.com> Signed-off-by: Rūdolfs Ošiņš <rudolfs@osins.org>
34 lines
1.1 KiB
TypeScript
34 lines
1.1 KiB
TypeScript
import type { FullConfig } from "@playwright/test";
|
|
|
|
import { seedPort, seedRemote } from "@tests/support/fixtures.js";
|
|
|
|
export default async function globalSetup(_config: FullConfig): Promise<void> {
|
|
assertHttpApiRunning();
|
|
}
|
|
|
|
// Assert that the test http-api is running. If it is not running, throw an
|
|
// error that explains how to run it.
|
|
async function assertHttpApiRunning(): Promise<void> {
|
|
const palmTestFixtureSeedId = seedRemote;
|
|
|
|
const notRunningMessage =
|
|
"The http-api server with test fixtures needs to be running.\n" +
|
|
"👉 You can start it with `./scripts/run-http-api-with-fixtures`\n";
|
|
|
|
let peerId: string | undefined = undefined;
|
|
|
|
try {
|
|
const response = await fetch(`http://0.0.0.0:${seedPort}`);
|
|
const data = await response.json();
|
|
peerId = data.peer.id;
|
|
} catch (err) {
|
|
console.error(err);
|
|
throw new Error(notRunningMessage);
|
|
}
|
|
|
|
if (peerId !== palmTestFixtureSeedId) {
|
|
const wrongSeedMessage = `The server on port ${seedPort} doesn't have the right fixtures.\n`;
|
|
throw new Error(wrongSeedMessage + notRunningMessage);
|
|
}
|
|
}
|