Skip to content

Add A2ATesting library for v0.5.0#12

Merged
vsima merged 1 commit intomainfrom
claude/affectionate-black
Mar 16, 2026
Merged

Add A2ATesting library for v0.5.0#12
vsima merged 1 commit intomainfrom
claude/affectionate-black

Conversation

@vsima
Copy link
Copy Markdown
Member

@vsima vsima commented Mar 16, 2026

Summary

  • Adds A2ATesting library target with reusable testing utilities for agent developers
  • MockA2AClient — actor-based mock with response configuration, call recording, and inspection
  • MockAgentExecutor — closure-based executor with .echo(), .failing(), .completing(), .inputRequired() presets
  • MockAgentHandler — pre-wired handler wrapping DefaultRequestHandler for router testing
  • .fixture() builders for AgentCard, Message, A2ATask, Part, Artifact, and event types
  • collectStreamEvents() and [StreamResponse] filtering/assertion helpers
  • 43 new tests across 4 suites
  • Updated GettingStarted docs with testing examples, ROADMAP, and version references

Test plan

  • swift build compiles A2A, A2AVapor, and A2ATesting
  • swift test passes all existing + 43 new tests on macOS
  • CI passes on macOS and Linux

🤖 Generated with Claude Code

…0.5.0

Introduces the A2ATesting library target providing reusable testing utilities:
- MockA2AClient with response configuration, call recording, and inspection
- MockAgentExecutor with .echo(), .failing(), .completing(), .inputRequired() presets
- MockAgentHandler wrapping DefaultRequestHandler for router testing
- .fixture() builders for AgentCard, Message, A2ATask, Part, Artifact, and events
- collectStreamEvents() and [StreamResponse] filtering/assertion helpers
- 43 new tests across 4 test suites
- Updated GettingStarted docs with testing examples

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vsima vsima merged commit a602e3d into main Mar 16, 2026
5 checks passed
@vsima vsima deleted the claude/affectionate-black branch March 16, 2026 16:46
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