Skip to main content

Test Anything Protocol producer API for Python.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

TAP-Producer-1.5.9.tar.gz (38.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

TAP_Producer-1.5.9-cp313-none-any.whl (28.4 kB view details)

Uploaded CPython 3.13

TAP_Producer-1.5.9-cp312-none-any.whl (28.5 kB view details)

Uploaded CPython 3.12

TAP_Producer-1.5.9-cp311-none-any.whl (29.1 kB view details)

Uploaded CPython 3.11

File details

Details for the file TAP-Producer-1.5.9.tar.gz.

File metadata

  • Download URL: TAP-Producer-1.5.9.tar.gz
  • Upload date:
  • Size: 38.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for TAP-Producer-1.5.9.tar.gz
Algorithm Hash digest
SHA256 3796a71606e93022a65367c144e8a96ae099e490b7f1839a2ead327f8e6a120e
MD5 de17a4afab2fdfa54cbb3f18c1dcb412
BLAKE2b-256 329fa7abc45ec86ae0a03f0c071ecae088c46e921ef917b689a894d0f0370404

See more details on using hashes here.

Provenance

The following attestation bundles were made for TAP-Producer-1.5.9.tar.gz:

Publisher: ozi.yml on OZI-Project/TAP-Producer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file TAP_Producer-1.5.9-cp313-none-any.whl.

File metadata

  • Download URL: TAP_Producer-1.5.9-cp313-none-any.whl
  • Upload date:
  • Size: 28.4 kB
  • Tags: CPython 3.13
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for TAP_Producer-1.5.9-cp313-none-any.whl
Algorithm Hash digest
SHA256 c32abcdd7d154821b0384f9ce9c882fa2aeab71c482532a8429601ddbeb0d347
MD5 27496324975bae2884a5663a62934c18
BLAKE2b-256 1ba2b75e817ce214a316c10235478ef171b7e8295c96b13541a3fa3a322e8854

See more details on using hashes here.

Provenance

The following attestation bundles were made for TAP_Producer-1.5.9-cp313-none-any.whl:

Publisher: ozi.yml on OZI-Project/TAP-Producer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file TAP_Producer-1.5.9-cp312-none-any.whl.

File metadata

  • Download URL: TAP_Producer-1.5.9-cp312-none-any.whl
  • Upload date:
  • Size: 28.5 kB
  • Tags: CPython 3.12
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for TAP_Producer-1.5.9-cp312-none-any.whl
Algorithm Hash digest
SHA256 fa6c1f3b94ad917383a12aa6f88805418b4ce0a931f7ed31cf9e33e8ba342719
MD5 6a9d94090f24a7a07326bff805cc0f07
BLAKE2b-256 357e4c559da20d41f9a863f89668e9e872cd7cd40730d8780e8f934ab6e1b034

See more details on using hashes here.

Provenance

The following attestation bundles were made for TAP_Producer-1.5.9-cp312-none-any.whl:

Publisher: ozi.yml on OZI-Project/TAP-Producer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file TAP_Producer-1.5.9-cp311-none-any.whl.

File metadata

  • Download URL: TAP_Producer-1.5.9-cp311-none-any.whl
  • Upload date:
  • Size: 29.1 kB
  • Tags: CPython 3.11
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for TAP_Producer-1.5.9-cp311-none-any.whl
Algorithm Hash digest
SHA256 9ef96610c444917e7a253c64208e30c775f81e01918ce80288386d48758b8081
MD5 6209be614a8035c57d0964580117bad3
BLAKE2b-256 b0304b927b924223eb6d7a75bdbe6bdb6b6eedeb419e1016a63ff40f6db588c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for TAP_Producer-1.5.9-cp311-none-any.whl:

Publisher: ozi.yml on OZI-Project/TAP-Producer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page