Skip to content

test(adapters): behavior coverage for external IDP/ECM/notification adapters (v26.06.71)#98

Merged
ancongui merged 1 commit into
mainfrom
test/adapter-behavior-coverage
Jun 7, 2026
Merged

test(adapters): behavior coverage for external IDP/ECM/notification adapters (v26.06.71)#98
ancongui merged 1 commit into
mainfrom
test/adapter-behavior-coverage

Conversation

@ancongui
Copy link
Copy Markdown
Contributor

@ancongui ancongui commented Jun 7, 2026

Closes the audit gap where external adapters were only wiring/isinstance-tested. 42 mocked-I/O behavior tests (no network/Docker) asserting both the outbound request shape (URL/verb/payload/auth headers) and response→domain parsing:

  • Notifications: Resend, Twilio, Firebase
  • ECM e-sign: DocuSign, Adobe Sign, Logalty
  • ECM storage: AwsS3 (fake injected boto3 client)
  • IDP: Keycloak

Each covers happy-path + error/non-2xx mapping + edge cases (sender precedence, attachment base64, multi-token partial success, status enum mapping). Adapter source unchanged. Written + self-verified by a parallel workflow (one agent per adapter, each ran its own tests green). Gates: mypy --strict (637), ruff+format, full suite green.

…bump v26.06.71

Closes the audit gap (wiring/isinstance-only coverage). Added behavior tests (fake httpx / boto3
clients, no network/Docker) asserting request shape + response parsing for: notifications
resend/twilio/firebase, ecm docusign/adobe_sign/logalty + aws_s3 (injected boto3 client), idp keycloak.
Each covers happy path + error/non-2xx mapping + edge cases (sender precedence, attachment encoding,
multi-token partial success, status mapping). Adapters unchanged. Written + self-verified by a
parallel workflow (one agent per adapter).

Gates: mypy --strict (637), ruff + format, full suite green.
@ancongui ancongui merged commit 1290695 into main Jun 7, 2026
5 checks passed
@ancongui ancongui deleted the test/adapter-behavior-coverage branch June 7, 2026 19:28
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