mirror of
https://github.com/penpot/penpot.git
synced 2025-01-23 23:18:48 -05:00
48 lines
1.6 KiB
JavaScript
48 lines
1.6 KiB
JavaScript
import { test, expect } from "@playwright/test";
|
|
import { ViewerPage } from "../pages/ViewerPage";
|
|
|
|
test.beforeEach(async ({ page }) => {
|
|
await ViewerPage.init(page);
|
|
});
|
|
|
|
const singleBoardFileId = "dd5cc0bb-91ff-81b9-8004-77df9cd3edb1";
|
|
const singleBoardPageId = "dd5cc0bb-91ff-81b9-8004-77df9cd3edb2";
|
|
|
|
const setupFileWithSingleBoard = async (viewer) => {
|
|
await viewer.mockRPC(/get\-view\-only\-bundle\?/, "viewer/get-view-only-bundle-single-board.json");
|
|
await viewer.mockRPC("get-comment-threads?file-id=*", "workspace/get-comment-threads-empty.json");
|
|
await viewer.mockRPC(
|
|
"get-file-fragment?file-id=*&fragment-id=*",
|
|
"viewer/get-file-fragment-single-board.json",
|
|
);
|
|
};
|
|
|
|
test("Clips link area of the logo", async ({ page }) => {
|
|
const viewerPage = new ViewerPage(page);
|
|
await viewerPage.setupLoggedInUser();
|
|
await viewerPage.setupEmptyFile();
|
|
|
|
await viewerPage.goToViewer();
|
|
|
|
const viewerUrl = page.url();
|
|
|
|
const logoLink = viewerPage.page.getByTestId("penpot-logo-link");
|
|
await expect(logoLink).toBeVisible();
|
|
|
|
const { x, y } = await logoLink.boundingBox();
|
|
await viewerPage.page.mouse.click(x, y + 100);
|
|
await expect(page.url()).toBe(viewerUrl);
|
|
});
|
|
|
|
test("Updates URL with zoom type", async ({ page }) => {
|
|
const viewer = new ViewerPage(page);
|
|
await viewer.setupLoggedInUser();
|
|
await setupFileWithSingleBoard(viewer);
|
|
|
|
await viewer.goToViewer({ fileId: singleBoardFileId, pageId: singleBoardPageId });
|
|
|
|
await viewer.page.getByTitle("Zoom").click();
|
|
await viewer.page.getByText(/Fit/).click();
|
|
|
|
await expect(viewer.page).toHaveURL(/&zoom=fit/);
|
|
});
|