Skip to content

Dev#4

Merged
alexis- merged 2 commits into
mainfrom
dev
Jul 1, 2026
Merged

Dev#4
alexis- merged 2 commits into
mainfrom
dev

Conversation

@alexis-

@alexis- alexis- commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

No description provided.

alexis- added 2 commits July 1, 2026 00:50
Add ISmtp2GoClient.SendMimeAsync, which POSTs a pre-built RFC 5322
message to the SMTP2GO email/mime endpoint. Unlike email/send (which
reconstructs the MIME from structured fields), email/mime transmits the
supplied message verbatim, preserving the caller's Content-Type
(e.g. multipart/alternative) and Message-ID. The request body is a
single base64 mime_email field; the response envelope matches email/send.

- EmailMimeRequest model (snake_case mime_email)
- SendMimeAsync on ISmtp2GoClient + Smtp2GoClient (+ MimeSendStarted log)
- Unit tests: EmailMimeRequest serialization + client SendMimeAsync
  behavior (mocked transport, posts to email/mime, error mapping)
- Integration tests: email/mime sandbox + live, proven against the real
  API (RawMimeBuilder hand-builds a multipart/alternative message, since
  the SDK takes the MIME as an opaque base64 string)
- Bump version 1.2.0 -> 1.3.0
SMTP2GO now validates that a webhook URL points to a reachable destination
at webhook/add time (HTTP 400 "The passed URL must point to a valid
destination"), so the webhook-management CRUD tests that registered a fake
example.com URL began failing in CI. Webhook *creation* now has the same
reachable-endpoint requirement that already excludes the *delivery* tests.

- Extract the receiver+tunnel setup into a shared WebhookPipelineHelper
  (EstablishReachableWebhookUrlAsync + webhook cleanup), used by both the
  delivery and management test classes instead of duplicating the pipeline.
- Point the management CRUD tests at a real Cloudflare-tunnel-backed receiver
  URL so they pass when run locally, and retag them Integration.Webhook so the
  existing CI exclusion (-trait- Category=Integration.Webhook) skips them.
- Update CI.yml comments: webhook delivery AND management are excluded.

Email/send, email/mime, and stats live/sandbox tests remain in CI (15 tests).
@alexis- alexis- merged commit a94ce80 into main Jul 1, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant