Skip to main content

Producer for Test Anything Protocol output in Python.

from tap_producer import TAP
with TAP() as t:
  t.ok('passed')
  t.ok('also passed')

The TAP class automatically counts test points at call time for TAP version 12, 13, and 14.

from tap_producer import TAP
@TAP(plan=1, version=14)
def f() -> None:
   TAP.ok('reason')
f()

TAP can also be used as a function decorator.

from tap_producer import TAP
TAP.version(14)
TAP.ok('passed')
TAP.end()

The TAP class can also be used as a purely functional API. Normally TAP calls end() on its own.

from tap_producer import TAP
with TAP() as t:
   t.ok('passed').comment('debug information')
   if FAIL_CONDITION:
      t.not_ok('did not pass')
      t.bail_out()

TAP using version 12 supports plan, ok, not ok, diagnostic comment, and bail out functionality.

with TAP(version=13).subtest('subtest') as st:
   st.plan(count=1, skip_count=0).ok('ok', {'yaml-key': 'yaml-val'})

TAP version 13 supports the aforementioned as well as subtest context manager and YAML diagnostic output.

from tap_producer import TAP
with TAP() as t:
   with t.suppress():
      t.ok('passed but suppressed')
   with t.strict()
      t.not_ok('this is now a Python exception')

TAP-Producer also includes two decorators, a suppress context manager for suppressing TAP output and a strict context manager for raising not ok test cases to Python errors.

License

Licensed Apache-2.0 WITH LLVM-exception, no NOTICE file needed if you want to vendor TAP-Producer into your project, see LICENSE.txt for more information.

https://raw.githubusercontent.com/sigstore/community/main/artwork/badge/sigstore_codesigned_purple.png

Metadata

Release files for TAP-Producer 1.5.22

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for TAP-Producer 1.5.22
File Size Uploaded
tap_producer-1.5.22.tar.gz 75.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for TAP-Producer 1.5.22
File Interpreter ABI Platform
tap_producer-1.5.22-cp313-none-any.whl CPython 3.13 none any Details
tap_producer-1.5.22-cp312-none-any.whl CPython 3.12 none any Details
tap_producer-1.5.22-cp311-none-any.whl CPython 3.11 none any Details

Total release size: 161.2 kB

Release files / tap_producer-1.5.22.tar.gz

Download URL tap_producer-1.5.22.tar.gz
Size 75.3 kB
Tags Source
SHA-256 checksum
How to use checksums
555478d19d0160933247178680099d68497491c8a3dd847b6195c4b5058ee197
BLAKE2b-256 checksum
How to use checksums
89e4828f04cb67e9de4d882542bf3b2df51f3b33bea97018fa8553d4b83728a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2025.

Transparency log

Release files / tap_producer-1.5.22-cp313-none-any.whl

Download URL tap_producer-1.5.22-cp313-none-any.whl
Size 28.4 kB
Tags CPython 3.13
SHA-256 checksum
How to use checksums
37651dd3d8b7886e762766b2ac240e812f165183405102d66ab5dc6486a06892
BLAKE2b-256 checksum
How to use checksums
229dbc6e24e951ba98d5f6d3fd541d211c800ca795217338b1573053fde06c1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2025.

Transparency log

Release files / tap_producer-1.5.22-cp312-none-any.whl

Download URL tap_producer-1.5.22-cp312-none-any.whl
Size 28.3 kB
Tags CPython 3.12
SHA-256 checksum
How to use checksums
d8c5e673aa719d116e1616e481b97c0c0504bbc0922a878b43c063405edeae1e
BLAKE2b-256 checksum
How to use checksums
58f3a65d54ee54453eac4602e577dee9973d4a895243fa68e4483b87ec5f2702
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2025.

Transparency log

Release files / tap_producer-1.5.22-cp311-none-any.whl

Download URL tap_producer-1.5.22-cp311-none-any.whl
Size 29.1 kB
Tags CPython 3.11
SHA-256 checksum
How to use checksums
bbb51c323aba8814698a75517ac7930f86d80b7f04a4aea4a3c7bcf783fab892
BLAKE2b-256 checksum
How to use checksums
706c1cbd93bd95a01e011e039f99af69d69b2655aa4dcd045a38495253157d6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.5.22 This release

4 release files

1.5.20

4 release files

1.5.19

4 release files

1.5.18

4 release files

1.5.17

4 release files

1.5.16

4 release files

1.5.14

4 release files

1.5.13

4 release files

1.5.12

4 release files

1.5.11

4 release files

1.5.9

4 release files

1.5.8

5 release files

1.5.7

5 release files

1.5.6

5 release files

1.5.5

5 release files

1.5.4

5 release files

1.5.3

5 release files

1.5.2

5 release files

1.5.1

5 release files

1.5.0

5 release files

1.4.2

5 release files

1.4.1

5 release files

1.4.0

5 release files

1.3.3

5 release files

1.3.2

5 release files

1.3.1

5 release files

1.3.0

5 release files

1.2.4

5 release files

1.2.3

5 release files

1.2.2

5 release files

1.2.1

5 release files

1.2.0

5 release files

1.1.0

5 release files

1.0.6

5 release files

1.0.5

5 release files

1.0.4

5 release files

1.0.3

5 release files

1.0.2

5 release files

1.0.1

5 release files

1.0.0

5 release files

0.3.0

5 release files

0.2.2

5 release files

0.2.1

5 release files

0.2.0

5 release files

0.1.7

5 release files

0.1.6

5 release files

0.1.5

5 release files

0.1.4

5 release files

0.1.3

5 release files

0.1.2

5 release files

0.1.1

5 release files

0.1.0

5 release files

0.0.3

5 release files

0.0.2

5 release files

0.0.1

5 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page