mirror of
https://github.com/penpot/penpot.git
synced 2025-01-09 08:20:45 -05:00
✨ Add test for #7805
This commit is contained in:
parent
96b7fb7f12
commit
724bc24063
4 changed files with 299 additions and 4 deletions
|
@ -0,0 +1,186 @@
|
||||||
|
{
|
||||||
|
"~:id": "~udd5cc0bb-91ff-81b9-8004-77dfae2d9e7c",
|
||||||
|
"~:file-id": "~udd5cc0bb-91ff-81b9-8004-77df9cd3edb1",
|
||||||
|
"~:created-at": "~m1717759268004",
|
||||||
|
"~:content": {
|
||||||
|
"~:options": {},
|
||||||
|
"~:objects": {
|
||||||
|
"~u00000000-0000-0000-0000-000000000000": {
|
||||||
|
"~#shape": {
|
||||||
|
"~:y": 0,
|
||||||
|
"~:hide-fill-on-export": false,
|
||||||
|
"~:transform": {
|
||||||
|
"~#matrix": {
|
||||||
|
"~:a": 1.0,
|
||||||
|
"~:b": 0.0,
|
||||||
|
"~:c": 0.0,
|
||||||
|
"~:d": 1.0,
|
||||||
|
"~:e": 0.0,
|
||||||
|
"~:f": 0.0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:rotation": 0,
|
||||||
|
"~:name": "Root Frame",
|
||||||
|
"~:width": 0.01,
|
||||||
|
"~:type": "~:frame",
|
||||||
|
"~:points": [
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 0,
|
||||||
|
"~:y": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 0.01,
|
||||||
|
"~:y": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 0.01,
|
||||||
|
"~:y": 0.01
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 0,
|
||||||
|
"~:y": 0.01
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"~:proportion-lock": false,
|
||||||
|
"~:transform-inverse": {
|
||||||
|
"~#matrix": {
|
||||||
|
"~:a": 1.0,
|
||||||
|
"~:b": 0.0,
|
||||||
|
"~:c": 0.0,
|
||||||
|
"~:d": 1.0,
|
||||||
|
"~:e": 0.0,
|
||||||
|
"~:f": 0.0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:id": "~u00000000-0000-0000-0000-000000000000",
|
||||||
|
"~:parent-id": "~u00000000-0000-0000-0000-000000000000",
|
||||||
|
"~:frame-id": "~u00000000-0000-0000-0000-000000000000",
|
||||||
|
"~:strokes": [],
|
||||||
|
"~:x": 0,
|
||||||
|
"~:proportion": 1.0,
|
||||||
|
"~:selrect": {
|
||||||
|
"~#rect": {
|
||||||
|
"~:x": 0,
|
||||||
|
"~:y": 0,
|
||||||
|
"~:width": 0.01,
|
||||||
|
"~:height": 0.01,
|
||||||
|
"~:x1": 0,
|
||||||
|
"~:y1": 0,
|
||||||
|
"~:x2": 0.01,
|
||||||
|
"~:y2": 0.01
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:fills": [
|
||||||
|
{
|
||||||
|
"~:fill-color": "#FFFFFF",
|
||||||
|
"~:fill-opacity": 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"~:flip-x": null,
|
||||||
|
"~:height": 0.01,
|
||||||
|
"~:flip-y": null,
|
||||||
|
"~:shapes": [
|
||||||
|
"~uec508673-9e3b-80bf-8004-77dfa30a2b13"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~uec508673-9e3b-80bf-8004-77dfa30a2b13": {
|
||||||
|
"~#shape": {
|
||||||
|
"~:y": 0,
|
||||||
|
"~:hide-fill-on-export": false,
|
||||||
|
"~:transform": {
|
||||||
|
"~#matrix": {
|
||||||
|
"~:a": 1.0,
|
||||||
|
"~:b": 0.0,
|
||||||
|
"~:c": 0.0,
|
||||||
|
"~:d": 1.0,
|
||||||
|
"~:e": 0.0,
|
||||||
|
"~:f": 0.0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:rotation": 0,
|
||||||
|
"~:grow-type": "~:fixed",
|
||||||
|
"~:hide-in-viewer": false,
|
||||||
|
"~:name": "Board",
|
||||||
|
"~:width": 256.00000000000006,
|
||||||
|
"~:type": "~:frame",
|
||||||
|
"~:points": [
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 0,
|
||||||
|
"~:y": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 256.00000000000006,
|
||||||
|
"~:y": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 256.00000000000006,
|
||||||
|
"~:y": 256
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"~#point": {
|
||||||
|
"~:x": 0,
|
||||||
|
"~:y": 256
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"~:proportion-lock": false,
|
||||||
|
"~:transform-inverse": {
|
||||||
|
"~#matrix": {
|
||||||
|
"~:a": 1.0,
|
||||||
|
"~:b": 0.0,
|
||||||
|
"~:c": 0.0,
|
||||||
|
"~:d": 1.0,
|
||||||
|
"~:e": 0.0,
|
||||||
|
"~:f": 0.0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:id": "~uec508673-9e3b-80bf-8004-77dfa30a2b13",
|
||||||
|
"~:parent-id": "~u00000000-0000-0000-0000-000000000000",
|
||||||
|
"~:frame-id": "~u00000000-0000-0000-0000-000000000000",
|
||||||
|
"~:strokes": [],
|
||||||
|
"~:x": 0,
|
||||||
|
"~:proportion": 1,
|
||||||
|
"~:selrect": {
|
||||||
|
"~#rect": {
|
||||||
|
"~:x": 0,
|
||||||
|
"~:y": 0,
|
||||||
|
"~:width": 256.00000000000006,
|
||||||
|
"~:height": 256,
|
||||||
|
"~:x1": 0,
|
||||||
|
"~:y1": 0,
|
||||||
|
"~:x2": 256.00000000000006,
|
||||||
|
"~:y2": 256
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:fills": [
|
||||||
|
{
|
||||||
|
"~:fill-color": "#FFFFFF",
|
||||||
|
"~:fill-opacity": 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"~:flip-x": null,
|
||||||
|
"~:height": 256,
|
||||||
|
"~:flip-y": null,
|
||||||
|
"~:shapes": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:id": "~udd5cc0bb-91ff-81b9-8004-77df9cd3edb2",
|
||||||
|
"~:name": "Page 1"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,86 @@
|
||||||
|
{
|
||||||
|
"~:users": [
|
||||||
|
{
|
||||||
|
"~:id": "~u0515a066-e303-8169-8004-73eb4018f4e0",
|
||||||
|
"~:email": "leia@example.com",
|
||||||
|
"~:name": "Princesa Leia",
|
||||||
|
"~:fullname": "Princesa Leia",
|
||||||
|
"~:is-active": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"~:fonts": [],
|
||||||
|
"~:project": {
|
||||||
|
"~:id": "~u0515a066-e303-8169-8004-73eb401b5d55",
|
||||||
|
"~:name": "Drafts",
|
||||||
|
"~:team-id": "~u0515a066-e303-8169-8004-73eb401977a6"
|
||||||
|
},
|
||||||
|
"~:share-links": [],
|
||||||
|
"~:libraries": [],
|
||||||
|
"~:file": {
|
||||||
|
"~:features": {
|
||||||
|
"~#set": [
|
||||||
|
"layout/grid",
|
||||||
|
"styles/v2",
|
||||||
|
"fdata/pointer-map",
|
||||||
|
"fdata/objects-map",
|
||||||
|
"components/v2",
|
||||||
|
"fdata/shape-data-type"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"~:has-media-trimmed": false,
|
||||||
|
"~:comment-thread-seqn": 0,
|
||||||
|
"~:name": "New File 3",
|
||||||
|
"~:revn": 1,
|
||||||
|
"~:modified-at": "~m1717759268010",
|
||||||
|
"~:id": "~udd5cc0bb-91ff-81b9-8004-77df9cd3edb1",
|
||||||
|
"~:is-shared": false,
|
||||||
|
"~:version": 48,
|
||||||
|
"~:project-id": "~u0515a066-e303-8169-8004-73eb401b5d55",
|
||||||
|
"~:created-at": "~m1717759250257",
|
||||||
|
"~:data": {
|
||||||
|
"~:id": "~udd5cc0bb-91ff-81b9-8004-77df9cd3edb1",
|
||||||
|
"~:options": {
|
||||||
|
"~:components-v2": true
|
||||||
|
},
|
||||||
|
"~:pages": [
|
||||||
|
"~udd5cc0bb-91ff-81b9-8004-77df9cd3edb2"
|
||||||
|
],
|
||||||
|
"~:pages-index": {
|
||||||
|
"~udd5cc0bb-91ff-81b9-8004-77df9cd3edb2": {
|
||||||
|
"~#penpot/pointer": [
|
||||||
|
"~udd5cc0bb-91ff-81b9-8004-77dfae2d9e7c",
|
||||||
|
{
|
||||||
|
"~:created-at": "~m1717759268024"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:team": {
|
||||||
|
"~:id": "~u0515a066-e303-8169-8004-73eb401977a6",
|
||||||
|
"~:created-at": "~m1717493865581",
|
||||||
|
"~:modified-at": "~m1717493865581",
|
||||||
|
"~:name": "Default",
|
||||||
|
"~:is-default": true,
|
||||||
|
"~:features": {
|
||||||
|
"~#set": [
|
||||||
|
"layout/grid",
|
||||||
|
"styles/v2",
|
||||||
|
"fdata/pointer-map",
|
||||||
|
"fdata/objects-map",
|
||||||
|
"components/v2",
|
||||||
|
"fdata/shape-data-type"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"~:permissions": {
|
||||||
|
"~:type": "~:membership",
|
||||||
|
"~:is-owner": true,
|
||||||
|
"~:is-admin": true,
|
||||||
|
"~:can-edit": true,
|
||||||
|
"~:can-read": true,
|
||||||
|
"~:is-logged": true,
|
||||||
|
"~:in-team": true
|
||||||
|
}
|
||||||
|
}
|
|
@ -33,10 +33,8 @@ export class ViewerPage extends BaseWebSocketPage {
|
||||||
super(page);
|
super(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
async goToViewer() {
|
async goToViewer({ fileId = ViewerPage.anyFileId, pageId = ViewerPage.anyPageId } = {}) {
|
||||||
await this.page.goto(
|
await this.page.goto(`/#/view/${fileId}?page-id=${pageId}§ion=interactions&index=0`);
|
||||||
`/#/view/${ViewerPage.anyFileId}?page-id=${ViewerPage.anyPageId}§ion=interactions&index=0`,
|
|
||||||
);
|
|
||||||
|
|
||||||
this.#ws = await this.waitForNotificationsWebSocket();
|
this.#ws = await this.waitForNotificationsWebSocket();
|
||||||
await this.#ws.mockOpen();
|
await this.#ws.mockOpen();
|
||||||
|
|
|
@ -5,6 +5,18 @@ test.beforeEach(async ({ page }) => {
|
||||||
await ViewerPage.init(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 }) => {
|
test("Clips link area of the logo", async ({ page }) => {
|
||||||
const viewerPage = new ViewerPage(page);
|
const viewerPage = new ViewerPage(page);
|
||||||
await viewerPage.setupLoggedInUser();
|
await viewerPage.setupLoggedInUser();
|
||||||
|
@ -21,3 +33,16 @@ test("Clips link area of the logo", async ({ page }) => {
|
||||||
await viewerPage.page.mouse.click(x, y + 100);
|
await viewerPage.page.mouse.click(x, y + 100);
|
||||||
await expect(page.url()).toBe(viewerUrl);
|
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/);
|
||||||
|
});
|
||||||
|
|
Loading…
Reference in a new issue