Files
radicle-explorer/tests/visual/desktop/landingPage.spec.ts
T
Sebastian Martinez a34056b2bf Remove sinon in favor of existing APIs of playwright and vitest
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()`
2024-08-29 10:11:04 +02:00

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();
});