axum-test-transport
fastrepl/anarlog/.agents/skills/axum-test-transport/SKILL.md
Choose between in-process `tower::ServiceExt::oneshot` tests and real `tokio::net::TcpListener` server tests for Axum services in this repository.
Skill9.5k starsChanged 41 days ago
--- name: axum-test-transport description: Choose between in-process `tower::ServiceExt::oneshot` tests and real `tokio::net::TcpListener` server tests for Axum services in this repository. metadata: internal: true --- Use this skill when working on Axum tests that currently start a server or could be simplified. Prefer `oneshot` when the test only verifies: - status codes - headers - JSON/body shape - route or middleware behavior - request handling without real network behavior Use: ```rust use tower::ServiceExt; ``` `oneshot` is available through `tower::ServiceExt`. Keep a real `TcpListener` + `axum::serve(...)` when the test needs: - WebSocket upgrade/handshake behavior - real client behavior (`reqwest`, `tokio_tungstenite`, etc.) as the thing under test - transport/lifecycle concerns like bind/listen/shutdown - true end-to-end coverage over `http://` or `ws://` Repository guidance: - `crates/transcribe-cactus/tests/batch.rs` style tests are good `oneshot` candidates - `crates/transcribe-cactus/tests/live.rs` WebSocket tests should stay real-server - if several tests share the same in-process request setup, add a tiny local helper (for example request builder or response JSON parser) After changes: - run `pnpm exec dprint fmt` - run the relevant Rust test compile/check command
More agent context in fastrepl/anarlog
38 other files this repository gives its agents.
Skill
- add-plugin.agents/skills/add-plugin/SKILL.md
- anarlog-workflow.agents/skills/anarlog-workflow/SKILL.md
- create-prs.agents/skills/create-prs/SKILL.md
- fix-prs.agents/skills/fix-prs/SKILL.md
- fix-ready-prs.agents/skills/fix-ready-prs/SKILL.md
- but.agents/skills/gitbutler/SKILL.md
- migrate-to-sqlite.agents/skills/migrate-to-sqlite/SKILL.md
- new-changelog.agents/skills/new-changelog/SKILL.md
- no-use-effect.agents/skills/no-use-effect/SKILL.md
- product-update-newsletter.agents/skills/product-update-newsletter/SKILL.md
- qa-cli-mcp-api.agents/skills/qa-cli-mcp-api/SKILL.md
- qa-critical-ux.agents/skills/qa-critical-ux/SKILL.md
- reactive-sqlite-ui.agents/skills/reactive-sqlite-ui/SKILL.md
- release-api.agents/skills/release-api/SKILL.md
- release-cli.agents/skills/release-cli/SKILL.md
- release-docs.agents/skills/release-docs/SKILL.md
- release-mcp.agents/skills/release-mcp/SKILL.md
- release-new-version.agents/skills/release-new-version/SKILL.md
- release-telemetry.agents/skills/release-telemetry/SKILL.md
- sqlite-schema-design.agents/skills/sqlite-schema-design/SKILL.md
- sweep-workspace.agents/skills/sweep-workspace/SKILL.md
- testing.agents/skills/testing/SKILL.md
- update-prs.agents/skills/update-prs/SKILL.md
- fix-ready-prs.claude/skills/fix-ready-prs/SKILL.md
- product-update-newsletter.claude/skills/product-update-newsletter/SKILL.md
- qa-critical-ux.claude/skills/qa-critical-ux/SKILL.md
- release-new-version.claude/skills/release-new-version/SKILL.md
- new-changelog.cursor/skills/new-changelog/SKILL.md
- qa-cli-mcp-api.cursor/skills/qa-cli-mcp-api/SKILL.md
- qa-critical-ux.cursor/skills/qa-critical-ux/SKILL.md
- release-new-version.cursor/skills/release-new-version/SKILL.md
- anarlogdocs/skill.md
- anarlogskills/anarlog/SKILL.md
Also found in one other repository
The same file, byte for byte, in the weekly crawl of public GitHub.
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
No reports yet. Be the first to say whether it worked.
Posts are public. Sign in to say whether it worked for you.Sign in to post
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

