mirror of
https://github.com/Ku6epXBOCTuK/easy-png-tools.git
synced 2026-11-13 17:08:20 +00:00
test: fix e2e webkit
This commit is contained in:
@@ -56,12 +56,24 @@ const decodeContracts: readonly DecodeContract[] = [
|
||||
{ file: sixteenBitPng, rejectedIn: [] },
|
||||
];
|
||||
|
||||
// На этих файлах createImageBitmap в webkit не завершается: ни результата, ни
|
||||
// ошибки — контракт «accept или reject» проверить нельзя.
|
||||
const webkitHangs = new Set([
|
||||
"truncated-header.png",
|
||||
"crc-bad-ancillary.png",
|
||||
"palette-256.png",
|
||||
]);
|
||||
|
||||
test.describe("PNG special fixtures", () => {
|
||||
for (const { file, rejectedIn } of decodeContracts) {
|
||||
test(`${file.name}: matches the engine decode contract`, async ({
|
||||
browserName,
|
||||
page,
|
||||
}) => {
|
||||
test.fixme(
|
||||
browserName === "webkit" && webkitHangs.has(file.name),
|
||||
"webkit createImageBitmap зависает на этом файле",
|
||||
);
|
||||
if (rejectedIn.includes(browserName)) {
|
||||
await expectRejected(page, file);
|
||||
} else {
|
||||
|
||||
@@ -295,7 +295,10 @@ test("chain: remove step returns to a single tool", async ({ page }) => {
|
||||
exact: true,
|
||||
});
|
||||
await expect(stepTwo).toBeVisible();
|
||||
await page.getByRole("button", { name: "Remove step" }).last().click();
|
||||
// Клик по remove именно в карточке Grayscale: порядок шагов зависит от
|
||||
// тайминга рендера и на разных движках может отличаться.
|
||||
const card = page.getByRole("article").filter({ hasText: "Grayscale PNG" });
|
||||
await card.getByLabel("Remove step").click();
|
||||
await expect(stepTwo).toHaveCount(0);
|
||||
expectNoErrors(sink);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user