From c39b6fae38db3bdb2c0cdeac806bee40d4e0fabb Mon Sep 17 00:00:00 2001 From: Cristian Greco Date: Fri, 14 Mar 2025 10:12:36 +0000 Subject: [PATCH] Fix flaky Selenium test --- .../selenium/src/selenium-container.test.ts | 16 +++++----------- .../container-runtime/utils/image-exists.test.ts | 1 - 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/packages/modules/selenium/src/selenium-container.test.ts b/packages/modules/selenium/src/selenium-container.test.ts index 82d2215c9..d7a131963 100644 --- a/packages/modules/selenium/src/selenium-container.test.ts +++ b/packages/modules/selenium/src/selenium-container.test.ts @@ -1,20 +1,10 @@ import path from "path"; import { Browser, Builder } from "selenium-webdriver"; -import { GenericContainer, StartedTestContainer } from "testcontainers"; +import { GenericContainer } from "testcontainers"; import tmp from "tmp"; import { SeleniumContainer, SELENIUM_VIDEO_IMAGE } from "./selenium-container"; describe("SeleniumContainer", { timeout: 180_000 }, () => { - let ffmpegContainer: StartedTestContainer; - - beforeAll(async () => { - ffmpegContainer = await new GenericContainer(SELENIUM_VIDEO_IMAGE).withCommand(["sleep", "infinity"]).start(); - }); - - afterAll(async () => { - await ffmpegContainer.stop(); - }); - const browsers = [ ["CHROME", process.arch === "arm64" ? `seleniarm/standalone-chromium:112.0` : `selenium/standalone-chrome:112.0`], ["FIREFOX", process.arch === "arm64" ? `seleniarm/standalone-firefox:112.0` : `selenium/standalone-firefox:112.0`], @@ -43,9 +33,13 @@ describe("SeleniumContainer", { timeout: 180_000 }, () => { const videoFileName = path.basename(videoFilePath); await stoppedContainer.saveRecording(videoFilePath); + const ffmpegContainer = await new GenericContainer(SELENIUM_VIDEO_IMAGE) + .withCommand(["sleep", "infinity"]) + .start(); await ffmpegContainer.copyFilesToContainer([{ source: videoFilePath, target: `/tmp/${videoFileName}` }]); const { exitCode } = await ffmpegContainer.exec(["ffprobe", `/tmp/${videoFileName}`]); expect(exitCode).toBe(0); + await ffmpegContainer.stop(); }); }); }); diff --git a/packages/testcontainers/src/container-runtime/utils/image-exists.test.ts b/packages/testcontainers/src/container-runtime/utils/image-exists.test.ts index f6b21b95d..d9743fa15 100644 --- a/packages/testcontainers/src/container-runtime/utils/image-exists.test.ts +++ b/packages/testcontainers/src/container-runtime/utils/image-exists.test.ts @@ -1,5 +1,4 @@ import Dockerode from "dockerode"; -import { afterEach } from "vitest"; import { ImageName } from "../image-name"; const mockImageInspect = vi.fn();