Files
skills/plugins/document-navigator/docs/testkit/testing/testing-integration-mailpit/README.md
admin 9bf56a806b Move docs/ package mirror into document-navigator plugin
Relocate the ~6k-file docs tree from the repo root into
plugins/document-navigator/docs/ so the plugin is self-contained and
portable. docs/superpowers/ (specs and plans) stays at the repo root.

Moved via cp+rm rather than git mv because directory rename() fails with
EPERM on this WSL /mnt DrvFs mount; git rename-detection pairs the
identical-content files at commit time.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 01:10:00 +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