Skip to content

feat(reports): add --report-tap to write a TAP v13 file#751

Merged
Chemaclass merged 1 commit into
mainfrom
feat/740-report-tap
Jul 9, 2026
Merged

feat(reports): add --report-tap to write a TAP v13 file#751
Chemaclass merged 1 commit into
mainfrom
feat/740-report-tap

Conversation

@Chemaclass

Copy link
Copy Markdown
Member

Summary

Adds --report-tap <file> (and BASHUNIT_REPORT_TAP) — writes results in TAP version 13 to a file, parallel to --report-html / --report-junit.

This is the file variant; the existing --output tap streams TAP to stdout. They are complementary.

Output shape:

TAP version 13
1..3
ok 1 - it adds
not ok 2 - it divides
  ---
  message: 'Expected 2 but got 3'
  ...
ok 3 - it skips # SKIP
  • passed/snapshot → ok
  • failed → not ok + YAML diagnostic (ANSI-stripped, newline-collapsed, quote-escaped)
  • skipped/risky → # SKIP, incomplete → # TODO

Tests

  • Unit (tests/unit/reports_test.sh): header/plan, ok, not ok + message, SKIP, TODO, tracking-gate.
  • Acceptance (tests/acceptance/bashunit_report_tap_test.sh): end-to-end file is valid TAP.

make sa + make lint pass; green under Bash 3.2 --strict --parallel --simple.

Docs: docs/command-line.md + bashunit test --help. CHANGELOG updated under Unreleased → Added.

Closes #740

Writes results in TAP version 13 to a file (parallels --report-html and
--report-junit): ok/not ok per test with a YAML diagnostic on failure, and
# SKIP / # TODO directives for skipped/incomplete/risky tests. Complements the
existing streaming '--output tap'.

Closes #740
@Chemaclass Chemaclass added the enhancement New feature or request label Jul 9, 2026
@Chemaclass Chemaclass self-assigned this Jul 9, 2026
@Chemaclass Chemaclass merged commit 8a9b9b0 into main Jul 9, 2026
31 checks passed
@Chemaclass Chemaclass deleted the feat/740-report-tap branch July 9, 2026 20:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(reports): --report-tap <file> TAP v13 output

1 participant