Skip to content
/ tapu Public

A human-friendly TAP reporter written in Fish and fully compliant with TAP version 14 specification.

License

Notifications You must be signed in to change notification settings

pure-fish/tapu

Repository files navigation

tapu

A TAP reporter port on tap-diff.

Fully written in fish and fully compliant with TAP version 14 specification.

💬 The name come from Maori's tapu, meaning holy or taboo (depending on your preference ;)).

🤖 This code was generated with the help of AI.

preview

Features

  • Full TAP14 Compliance: Implements all required features of the TAP version 14 specification
    • Proper escaping (\# and \\) in descriptions, directives, and messages
    • Subtest support with 4-space indentation and correlated test points
    • Plan validation (position, count matching, test ID ranges)
    • TODO/SKIP directives with case-insensitive parsing
    • YAML diagnostics with multiple field name conventions
    • Bail out support with immediate termination
  • Clean Output: Color-coded test results with symbols (✔/✖)
  • Detailed Diagnostics: YAML block parsing with pretty-printed failure details
  • No Dependencies: Pure Fish implementation
  • Easy integration with fish shell test suites ;
  • Compatible with fishtape test framework.

See COMPLIANCE.md for detailed specification compliance information.

Installation

Use fisher to install:

fisher install pure-fish/tapu

Usage

Pipe the output of your TAP-compliant test suite to tapu:

fishtape tests/*.fish | tapu

Development

Running Tests

fishtape tests/*.fish

MIT License

About

A human-friendly TAP reporter written in Fish and fully compliant with TAP version 14 specification.

Topics

Resources

License

Stars

Watchers

Forks