Files
flights_web/tests/e2e/share-button-removed.spec.ts
T
gnezim da233c6d08
ci-deploy / build-deploy-test (push) Successful in 1m30s
Remove flight share buttons
2026-05-28 13:23:10 +03:00

69 lines
2.3 KiB
TypeScript

import fs from "node:fs";
import path from "node:path";
import { fileURLToPath } from "node:url";
import { test, expect } from "./fixtures/console-gate";
import {
routeOnlineboardRouteFixtures,
routeScheduleVvoMjzFixtures,
} from "./helpers/api-fixtures";
import { formatYmd, vvoMjzDetailsUrl } from "./helpers/dates";
import { nextOnlineboardDetailsFixture } from "./helpers/onlineboard-fixtures";
const FIXTURE_DIR = path.resolve(
path.dirname(fileURLToPath(import.meta.url)),
"../fixtures/api",
);
const onlineboardDetails = fs.readFileSync(
path.join(FIXTURE_DIR, "onlineboard-details.json"),
"utf8",
);
test("TIRREDESIGN-32: onlineboard details page does not render share buttons", async ({
page,
consoleMessages,
}) => {
const details = nextOnlineboardDetailsFixture(onlineboardDetails);
await page.route("**/api/flights/v1.1/ru/onlineboard/details?**", async (route) => {
await route.fulfill({
status: 200,
contentType: "application/json",
body: details.body,
});
});
await page.goto(`/ru-ru/onlineboard/SU6951-${details.compactDate}`);
await expect(page.getByTestId("board-details-header")).toBeVisible({
timeout: 15000,
});
await expect(page.getByTestId("share-button")).toHaveCount(0);
await expect(page.getByTestId("share-panel")).toHaveCount(0);
});
test("TIRREDESIGN-32: schedule details page does not render share buttons", async ({
page,
consoleMessages,
}) => {
await routeScheduleVvoMjzFixtures(page);
await page.goto(vvoMjzDetailsUrl());
await expect(page.getByTestId("schedule-details")).toBeVisible({
timeout: 15000,
});
await expect(page.getByTestId("share-button")).toHaveCount(0);
await expect(page.getByTestId("share-panel")).toHaveCount(0);
});
test("TIRREDESIGN-32: expanded flight rows do not render row share buttons", async ({
page,
consoleMessages,
}) => {
await routeOnlineboardRouteFixtures(page);
await page.goto(`/ru-ru/onlineboard/route/MOW-LED-${formatYmd(new Date())}`);
await expect(page.locator(".flight-card").first()).toBeVisible({
timeout: 15000,
});
await page.locator(".flight-card--clickable").first().click();
await expect(page.locator(".flight-card--expanded").first()).toBeVisible();
await expect(page.getByTestId("flight-share-button")).toHaveCount(0);
});