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.22.tar.gz (75.3 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.22-cp313-none-any.whl (28.4 kB view details)

Uploaded CPython 3.13

tap_producer-1.5.22-cp312-none-any.whl (28.3 kB view details)

Uploaded CPython 3.12

tap_producer-1.5.22-cp311-none-any.whl (29.1 kB view details)

Uploaded CPython 3.11

File details

Details for the file tap_producer-1.5.22.tar.gz.

File metadata

  • Download URL: tap_producer-1.5.22.tar.gz
  • Upload date:
  • Size: 75.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tap_producer-1.5.22.tar.gz
Algorithm Hash digest
SHA256 555478d19d0160933247178680099d68497491c8a3dd847b6195c4b5058ee197
MD5 88015ce91e87444bcdafb65abb513e3f
BLAKE2b-256 89e4828f04cb67e9de4d882542bf3b2df51f3b33bea97018fa8553d4b83728a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tap_producer-1.5.22.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.22-cp313-none-any.whl.

File metadata

  • Download URL: tap_producer-1.5.22-cp313-none-any.whl
  • Upload date:
  • Size: 28.4 kB
  • Tags: CPython 3.13
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tap_producer-1.5.22-cp313-none-any.whl
Algorithm Hash digest
SHA256 37651dd3d8b7886e762766b2ac240e812f165183405102d66ab5dc6486a06892
MD5 4bf44ba60f53d1de33a2f38b2416a55d
BLAKE2b-256 229dbc6e24e951ba98d5f6d3fd541d211c800ca795217338b1573053fde06c1a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tap_producer-1.5.22-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.22-cp312-none-any.whl.

File metadata

  • Download URL: tap_producer-1.5.22-cp312-none-any.whl
  • Upload date:
  • Size: 28.3 kB
  • Tags: CPython 3.12
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tap_producer-1.5.22-cp312-none-any.whl
Algorithm Hash digest
SHA256 d8c5e673aa719d116e1616e481b97c0c0504bbc0922a878b43c063405edeae1e
MD5 ffe9ad0ac71ea4d77b28b99d7f9e7fae
BLAKE2b-256 58f3a65d54ee54453eac4602e577dee9973d4a895243fa68e4483b87ec5f2702

See more details on using hashes here.

Provenance

The following attestation bundles were made for tap_producer-1.5.22-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.22-cp311-none-any.whl.

File metadata

  • Download URL: tap_producer-1.5.22-cp311-none-any.whl
  • Upload date:
  • Size: 29.1 kB
  • Tags: CPython 3.11
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tap_producer-1.5.22-cp311-none-any.whl
Algorithm Hash digest
SHA256 bbb51c323aba8814698a75517ac7930f86d80b7f04a4aea4a3c7bcf783fab892
MD5 e6f3d62e129df4570e16180e206a6950
BLAKE2b-256 706c1cbd93bd95a01e011e039f99af69d69b2655aa4dcd045a38495253157d6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tap_producer-1.5.22-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