Files
2026-05-27 23:47:53 +01:00

2.7 KiB

@suaveplan/testing-integration-mailpit - Mailpit testcontainers fixture + assertMail helper for @suaveplan/testing-integration

Summary

Mailpit testcontainers fixture + assertMail() helper for @suaveplan/testing-integration.

Implements ServiceFixture<MailpitConfig> — manages a Mailpit container lifecycle with SMTP and API ports, env-bridge passthrough, and API health checks.

Documentation tree

- [mailpit-fixture](./src/fixture/mailpit-fixture.md) — _(no submodules)_- [helpers](./src/helpers/assert-mail.md) — _(no submodules)_- [assert-mail](./src/helpers/assert-mail.md) — _(no submodules)_- [mailpit-fixture](./src/fixture/mailpit-fixture.md) — _(no submodules)_- [helpers](./src/helpers/assert-mail.md) — _(no submodules)_- [assert-mail](./src/helpers/assert-mail.md) — _(no submodules)_- [mailpit-fixture](./src/fixture/mailpit-fixture.md) — _(no submodules)_- [helpers](./src/helpers/assert-mail.md) — _(no submodules)_- [assert-mail](./src/helpers/assert-mail.md) — _(no submodules)_- [mailpit-fixture](./src/fixture/mailpit-fixture.md) — _(no submodules)_- [helpers](./src/helpers/assert-mail.md) — _(no submodules)_ - [assert-mail](./src/helpers/assert-mail.md) — _(no submodules)_

Install

bun add -D @suaveplan/testing-integration-mailpit

Quick Start

import { MailpitFixture, assertMail } from "@suaveplan/testing-integration-mailpit";

const fixture = new MailpitFixture();
const config = await fixture.start();
// config.smtpUrl, config.apiUrl

// Send email to config.smtpUrl...

await assertMail(config.apiUrl, { to: "user@example.com", subject: "Welcome" });

await fixture.stop();

Env-bridge passthrough

Set both env vars to skip container startup:

MAILPIT_SMTP_URL=smtp://localhost:1025
MAILPIT_API_URL=http://localhost:8025

Docs