mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-11-16 03:40:37 +08:00
We where using `sinon` in the `playwright` tests to simulate a different time, which since `playwright@1.45.0` can be done with the Clock API calling `page.clock.setFixedTime`. And to test the mutex executor we can use the vitest utils spy function `vi.fn()` instead of `sinon.spy()`
66 lines
1.9 KiB
TypeScript
66 lines
1.9 KiB
TypeScript
import { test, expect } from "@tests/support/fixtures.js";
|
|
|
|
test("pinned repos", async ({ page }) => {
|
|
await page.addInitScript(() => {
|
|
localStorage.setItem(
|
|
"configuredPreferredSeeds",
|
|
JSON.stringify([{ hostname: "127.0.0.1", port: 8081, scheme: "http" }]),
|
|
);
|
|
});
|
|
|
|
await page.clock.setFixedTime(new Date("November 24 2022 12:00:00"));
|
|
await page.goto("/", { waitUntil: "networkidle" });
|
|
await expect(page).toHaveScreenshot();
|
|
});
|
|
|
|
test("load repos error", async ({ page }) => {
|
|
await page.addInitScript(() => {
|
|
localStorage.setItem(
|
|
"configuredPreferredSeeds",
|
|
JSON.stringify([{ hostname: "127.0.0.1", port: 8081, scheme: "http" }]),
|
|
);
|
|
});
|
|
|
|
await page.clock.setFixedTime(new Date("November 24 2022 12:00:00"));
|
|
await page.route(
|
|
({ pathname }) => pathname === "/api/v1/repos",
|
|
route => route.fulfill({ status: 500 }),
|
|
);
|
|
|
|
await page.goto("/", { waitUntil: "networkidle" });
|
|
await expect(page).toHaveScreenshot();
|
|
});
|
|
|
|
test("response parse error", async ({ page }) => {
|
|
await page.addInitScript(() => {
|
|
localStorage.setItem(
|
|
"configuredPreferredSeeds",
|
|
JSON.stringify([{ hostname: "127.0.0.1", port: 8081, scheme: "http" }]),
|
|
);
|
|
});
|
|
await page.route("*/**/v1/repos*", route => {
|
|
return route.fulfill({
|
|
json: [{ name: 1337 }],
|
|
});
|
|
});
|
|
await page.goto("/", { waitUntil: "networkidle" });
|
|
await expect(page).toHaveScreenshot();
|
|
});
|
|
|
|
test("response error", async ({ page }) => {
|
|
await page.addInitScript(() => {
|
|
localStorage.setItem(
|
|
"configuredPreferredSeeds",
|
|
JSON.stringify([{ hostname: "127.0.0.1", port: 8081, scheme: "http" }]),
|
|
);
|
|
});
|
|
await page.route("*/**/v1/repos*", route => {
|
|
return route.fulfill({
|
|
status: 500,
|
|
body: "There is an error in the response",
|
|
});
|
|
});
|
|
await page.goto("/", { waitUntil: "networkidle" });
|
|
await expect(page).toHaveScreenshot();
|
|
});
|