@@ -42,7 +42,7 @@ test("serves the release identity and hardened headers", async ({
|
||||
const manifest = await request.get("/deep/nested/privacy/toolbox-app.json");
|
||||
await expect(manifest.json()).resolves.toMatchObject({
|
||||
id: "de.add-ideas.privacy-tools",
|
||||
version: "0.1.0",
|
||||
version: "0.2.0",
|
||||
entry: "./",
|
||||
});
|
||||
});
|
||||
@@ -76,6 +76,14 @@ test("inspects and independently verifies a re-encoded PNG without network acces
|
||||
await expect(page.getByText("Alice PNG").first()).toBeVisible();
|
||||
await expect(page.getByText("PNG Alice").first()).toBeVisible();
|
||||
await expect(page.getByText("inventory-only.pdf").first()).toBeVisible();
|
||||
await expect(
|
||||
page.getByRole("heading", { name: "Selective-removal policy" }),
|
||||
).toBeVisible();
|
||||
await expect(page.getByText("inspect-only", { exact: true })).toBeVisible();
|
||||
await page.getByLabel("Policy profile").selectOption("location-only");
|
||||
await expect(
|
||||
page.getByText("policy-not-executable", { exact: true }),
|
||||
).toBeVisible();
|
||||
await page.getByRole("button", { name: "Re-encode & verify" }).click();
|
||||
await expect(page.getByText("Mandatory output re-scan")).toBeVisible();
|
||||
await expect(page.locator(".verification")).not.toHaveClass(/is-failed/u);
|
||||
@@ -87,18 +95,26 @@ test("inspects and independently verifies a re-encoded PNG without network acces
|
||||
await page
|
||||
.getByRole("button", { name: "Download re-encoded output" })
|
||||
.click();
|
||||
expect((await imageDownload).suggestedFilename()).toBe(
|
||||
"metadata-fixture.clean.png",
|
||||
expect((await imageDownload).suggestedFilename()).toBe("image-001.clean.png");
|
||||
|
||||
const safeReportDownload = page.waitForEvent("download");
|
||||
await page
|
||||
.getByRole("button", { name: "Download safe-share report" })
|
||||
.click();
|
||||
expect((await safeReportDownload).suggestedFilename()).toBe(
|
||||
"privacy-tools-safe-share-report.json",
|
||||
);
|
||||
|
||||
const reportDownload = page.waitForEvent("download");
|
||||
await page.getByRole("button", { name: "Download JSON report" }).click();
|
||||
expect((await reportDownload).suggestedFilename()).toBe(
|
||||
const detailedReportDownload = page.waitForEvent("download");
|
||||
await page.getByRole("button", { name: "Download detailed report" }).click();
|
||||
expect((await detailedReportDownload).suggestedFilename()).toBe(
|
||||
"privacy-tools-report.json",
|
||||
);
|
||||
const archiveDownload = page.waitForEvent("download");
|
||||
await page
|
||||
.getByRole("button", { name: "Download 1 re-encoded image + report" })
|
||||
.getByRole("button", {
|
||||
name: "Download safe-share ZIP with 1 re-encoded image + report",
|
||||
})
|
||||
.click();
|
||||
expect((await archiveDownload).suggestedFilename()).toBe(
|
||||
"privacy-tools-re-encoded-images.zip",
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
import { expect, test } from "@playwright/test";
|
||||
|
||||
test("keeps the primary workspace inside a narrow viewport", async ({
|
||||
page,
|
||||
}) => {
|
||||
await page.goto("/deep/nested/privacy/");
|
||||
await expect(page.locator("main").first()).toBeVisible();
|
||||
await expect(
|
||||
page.locator("main .loading, main .workbench-loading"),
|
||||
).toHaveCount(0);
|
||||
|
||||
const widths = await page.evaluate(() => ({
|
||||
content: document.documentElement.scrollWidth,
|
||||
viewport: document.documentElement.clientWidth,
|
||||
}));
|
||||
expect(widths.viewport).toBeLessThanOrEqual(430);
|
||||
expect(widths.content).toBeLessThanOrEqual(widths.viewport + 1);
|
||||
});
|
||||
Reference in New Issue
Block a user