Testcontainers
Floci has first-class Testcontainers modules for every major SDK language. Each module starts a real Floci container before your tests run and tears it down after — no running daemon, no shared state, no port conflicts.
Available modules
For Testcontainers 1.x, use the versions as indicated in the table below.
| Language | Package | Version | Registry | Source |
|---|---|---|---|---|
| Java | io.floci:testcontainers-floci |
1.14.0 |
Maven Central | GitHub |
| Node.js | @floci/testcontainers |
0.1.0 |
npm | GitHub |
| Python | testcontainers-floci |
0.1.1 |
PyPI | GitHub |
| .NET | Testcontainers.Floci |
see releases | GitHub Packages | GitHub |
| Go | — | 🚧 In progress | — | GitHub |
For Testcontainers 2.x / Spring Boot 4.x, use version 2.15.0.
How it works
Every module exposes a FlociContainer class that wraps the official floci/floci:latest Docker image. When the container starts it waits for port 4566 to be ready, then exposes:
| Method | Returns |
|---|---|
getEndpoint() |
http://localhost:<mapped-port> |
getRegion() |
us-east-1 (default) |
getAccessKey() |
test |
getSecretKey() |
test |
You pass these values directly into any AWS SDK client — no manual configuration, no environment variables.
Language guides
- Java — JUnit 5, Spring Boot
@ServiceConnection - Node.js / TypeScript — Jest, Vitest
- Python — pytest
- .NET: xUnit
- Go — in progress