Files
suaveplan/packages/persistence/storage/storage-s3/tests/integration/global-setup.ts
2026-05-27 23:47:53 +01:00

29 lines
1.1 KiB
TypeScript

/**
* Vitest global-setup module — drives the Garage S3 fixture for storage-s3
* integration tests.
*
* Uses the public `createIntegrationSetup()` factory from
* `@suaveplan/testing-integration`. The Bun-NAPI shim that lets testcontainers
* load under Bun is auto-installed by the re-exported
* `@suaveplan/testing-integration/setup/global-setup` module — no per-consumer
* wiring is needed.
*/
import { createIntegrationSetup } from "@suaveplan/testing-integration";
import { GarageS3Fixture } from "@suaveplan/testing-integration-garage-s3";
// Default `ghcr.io/deuxfleurs/garage:v2.0.0` returns 403 for unauthenticated
// pulls — mirror to Docker Hub.
export const fixtures = {
"garage-s3": new GarageS3Fixture({ image: "dxflrs/garage:v2.0.0" }),
};
export const { inject } = createIntegrationSetup(fixtures);
// Re-export Vitest's setup/teardown contract from testing-integration's
// public global-setup module. Vitest discovers them by name when this file
// is wired as `test.globalSetup` in `vitest.integration.config.ts`.
export {
setup,
teardown,
} from "@suaveplan/testing-integration/setup/global-setup";