From 332c79f4ce41529986db6228827c637d3490e45d Mon Sep 17 00:00:00 2001 From: SnapOtter Date: Fri, 1 May 2026 19:05:51 +0800 Subject: [PATCH] fix: increase all HEIF/HEIC integration test timeouts to 120s for CI The sharpening HEIF test was timing out at 60s in GitHub Actions. Bumps all remaining HEIF/HEIC test timeouts from 60s to 120s across 14 integration test files for consistency with vectorize. --- tests/integration/barcode-read.test.ts | 2 +- tests/integration/border.test.ts | 2 +- tests/integration/bulk-rename.test.ts | 2 +- tests/integration/collage.test.ts | 2 +- tests/integration/color-palette.test.ts | 2 +- tests/integration/compare.test.ts | 2 +- tests/integration/compose.test.ts | 2 +- tests/integration/favicon.test.ts | 2 +- tests/integration/image-enhancement.test.ts | 2 +- tests/integration/info.test.ts | 2 +- tests/integration/optimize-for-web.test.ts | 2 +- tests/integration/sharpening.test.ts | 8 ++++---- tests/integration/split.test.ts | 2 +- tests/integration/stitch.test.ts | 2 +- 14 files changed, 17 insertions(+), 17 deletions(-) diff --git a/tests/integration/barcode-read.test.ts b/tests/integration/barcode-read.test.ts index 77d361e0..377f9f12 100644 --- a/tests/integration/barcode-read.test.ts +++ b/tests/integration/barcode-read.test.ts @@ -829,7 +829,7 @@ describe("Barcode Read", () => { // ── HEIF format input ───────────────────────────────────────────── - it("reads barcodes from a HEIF image", { timeout: 60_000 }, async () => { + it("reads barcodes from a HEIF image", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "photo.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/border.test.ts b/tests/integration/border.test.ts index 9442cfa9..741e5deb 100644 --- a/tests/integration/border.test.ts +++ b/tests/integration/border.test.ts @@ -573,7 +573,7 @@ describe("Border", () => { expect(result.processedSize).toBeGreaterThan(0); }); - it("handles HEIF input (motorcycle.heif)", { timeout: 60_000 }, async () => { + it("handles HEIF input (motorcycle.heif)", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "photo.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/bulk-rename.test.ts b/tests/integration/bulk-rename.test.ts index f6f442db..fd6fbba5 100644 --- a/tests/integration/bulk-rename.test.ts +++ b/tests/integration/bulk-rename.test.ts @@ -620,7 +620,7 @@ describe("Bulk Rename", () => { // ── HEIF file handling ───────────────────────────────────────── - it("renames HEIF files preserving extension", { timeout: 60_000 }, async () => { + it("renames HEIF files preserving extension", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "formats", "sample.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "photo.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/collage.test.ts b/tests/integration/collage.test.ts index 3e57a74c..c3449d5e 100644 --- a/tests/integration/collage.test.ts +++ b/tests/integration/collage.test.ts @@ -1457,7 +1457,7 @@ describe("Collage", () => { // ── HEIF format input ───────────────────────────────────────────── - it("handles HEIF input images", { timeout: 60_000 }, async () => { + it("handles HEIF input images", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "f1", filename: "a.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/color-palette.test.ts b/tests/integration/color-palette.test.ts index ea0f7c26..ac0162b7 100644 --- a/tests/integration/color-palette.test.ts +++ b/tests/integration/color-palette.test.ts @@ -382,7 +382,7 @@ describe("Solid white image", () => { // ── HEIF input ───────────────────────────────────────────────── describe("HEIF input", () => { - it("extracts palette from HEIF image", { timeout: 60_000 }, async () => { + it("extracts palette from HEIF image", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body: payload, contentType } = makeFilePayload(HEIF, "photo.heif", "image/heif"); const res = await app.inject({ diff --git a/tests/integration/compare.test.ts b/tests/integration/compare.test.ts index 274bd45e..588fbac5 100644 --- a/tests/integration/compare.test.ts +++ b/tests/integration/compare.test.ts @@ -776,7 +776,7 @@ describe("Compare", () => { // ── HEIF format input ───────────────────────────────────────────── - it("compares HEIF image with PNG", { timeout: 60_000 }, async () => { + it("compares HEIF image with PNG", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "a.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/compose.test.ts b/tests/integration/compose.test.ts index 14dbffc8..04bd7da1 100644 --- a/tests/integration/compose.test.ts +++ b/tests/integration/compose.test.ts @@ -1012,7 +1012,7 @@ describe("Compose", () => { // ── HEIF format input ───────────────────────────────────────────── - it("handles HEIF base image", { timeout: 60_000 }, async () => { + it("handles HEIF base image", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "base.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/favicon.test.ts b/tests/integration/favicon.test.ts index e05e494e..84971c7b 100644 --- a/tests/integration/favicon.test.ts +++ b/tests/integration/favicon.test.ts @@ -682,7 +682,7 @@ describe("favicon", () => { // ── HEIF format input ──────────────────────────────────────────── - it("generates favicons from HEIF input", { timeout: 60_000 }, async () => { + it("generates favicons from HEIF input", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "photo.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/image-enhancement.test.ts b/tests/integration/image-enhancement.test.ts index c8ecd53c..353082fd 100644 --- a/tests/integration/image-enhancement.test.ts +++ b/tests/integration/image-enhancement.test.ts @@ -601,7 +601,7 @@ describe("Authentication", () => { // ── HEIF input ───────────────────────────────────────────────── describe("HEIF input", () => { - it("enhances HEIF (sample.heif) input", { timeout: 60_000 }, async () => { + it("enhances HEIF (sample.heif) input", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "formats", "sample.heif")); const res = await postTool({ mode: "auto" }, HEIF, "sample.heif", "image/heif"); expect([200, 422]).toContain(res.statusCode); diff --git a/tests/integration/info.test.ts b/tests/integration/info.test.ts index bb373451..3a788b85 100644 --- a/tests/integration/info.test.ts +++ b/tests/integration/info.test.ts @@ -589,7 +589,7 @@ describe("Info", () => { // ── HEIF format info ────────────────────────────────────────── - it("returns correct metadata for HEIF (sample.heif) image", { timeout: 60_000 }, async () => { + it("returns correct metadata for HEIF (sample.heif) image", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "formats", "sample.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "sample.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/optimize-for-web.test.ts b/tests/integration/optimize-for-web.test.ts index 82eaaf53..1a06e3bc 100644 --- a/tests/integration/optimize-for-web.test.ts +++ b/tests/integration/optimize-for-web.test.ts @@ -739,7 +739,7 @@ describe("Authentication", () => { // ── HEIF input handling ─────────────────────────────────────── describe("HEIF input", () => { - it("optimizes HEIF (sample.heif) input to webp", { timeout: 60_000 }, async () => { + it("optimizes HEIF (sample.heif) input to webp", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "formats", "sample.heif")); const res = await postTool({ format: "webp" }, HEIF, "sample.heif", "image/heif"); // HEIF decode may not be available diff --git a/tests/integration/sharpening.test.ts b/tests/integration/sharpening.test.ts index 7282762b..40069c5b 100644 --- a/tests/integration/sharpening.test.ts +++ b/tests/integration/sharpening.test.ts @@ -247,7 +247,7 @@ describe("Error handling", () => { // ── HEIC input handling ───────────────────────────────────────── describe("HEIC input", () => { - it("processes HEIC image with adaptive sharpening", async () => { + it("processes HEIC image with adaptive sharpening", { timeout: 120_000 }, async () => { const HEIC = readFileSync(join(FIXTURES, "test-200x150.heic")); const res = await postTool({ method: "adaptive" }, HEIC, "photo.heic", "image/heic"); expect(res.statusCode).toBe(200); @@ -430,7 +430,7 @@ describe("Denoise off", () => { // ── HEIC with unsharp-mask method ────────────────────────────── describe("HEIC with different methods", () => { - it("processes HEIC with unsharp-mask", async () => { + it("processes HEIC with unsharp-mask", { timeout: 120_000 }, async () => { const HEIC = readFileSync(join(FIXTURES, "test-200x150.heic")); const res = await postTool( { method: "unsharp-mask", amount: 200 }, @@ -441,7 +441,7 @@ describe("HEIC with different methods", () => { expect(res.statusCode).toBe(200); }); - it("processes HEIC with high-pass", async () => { + it("processes HEIC with high-pass", { timeout: 120_000 }, async () => { const HEIC = readFileSync(join(FIXTURES, "test-200x150.heic")); const res = await postTool( { method: "high-pass", strength: 60 }, @@ -466,7 +466,7 @@ describe("HEIF input", () => { expect(res.statusCode).toBe(200); const result = JSON.parse(res.body); expect(result.downloadUrl).toBeDefined(); - }, 60_000); + }, 120_000); }); // ── Animated GIF input ────────────────────────────────────────── diff --git a/tests/integration/split.test.ts b/tests/integration/split.test.ts index 64f1d4e6..25d4e0dd 100644 --- a/tests/integration/split.test.ts +++ b/tests/integration/split.test.ts @@ -1389,7 +1389,7 @@ describe("Split", () => { // ── HEIF format input ───────────────────────────────────────────── - it("splits a HEIF input image", { timeout: 60_000 }, async () => { + it("splits a HEIF input image", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "file", filename: "photo.heif", contentType: "image/heif", content: HEIF }, diff --git a/tests/integration/stitch.test.ts b/tests/integration/stitch.test.ts index f0352ec1..372b66af 100644 --- a/tests/integration/stitch.test.ts +++ b/tests/integration/stitch.test.ts @@ -1487,7 +1487,7 @@ describe("Stitch", () => { // ── HEIF format input ───────────────────────────────────────────── - it("handles HEIF input in stitching", { timeout: 60_000 }, async () => { + it("handles HEIF input in stitching", { timeout: 120_000 }, async () => { const HEIF = readFileSync(join(FIXTURES, "content", "motorcycle.heif")); const { body, contentType } = createMultipartPayload([ { name: "f1", filename: "a.heif", contentType: "image/heif", content: HEIF },