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

Uploaded CPython 3.13

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

Uploaded CPython 3.12

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

Uploaded CPython 3.11

File details

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

File metadata

  • Download URL: tap_producer-1.5.21.tar.gz
  • Upload date:
  • Size: 74.8 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.21.tar.gz
Algorithm Hash digest
SHA256 04ca05e8727fdd742bbedf36c2afd3f271f06dfb862ac4e90c06be962cc4499f
MD5 41124438d77f48a50da406f3f91350b7
BLAKE2b-256 19c43da75e2475e25262cf0988a1c872601a066208d326f546bce93b2d39b7ab

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.21-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.21-cp313-none-any.whl
Algorithm Hash digest
SHA256 3ec3a058bf47b741a6fd7d5570df71c95e8233953cc0c28eb95970f12d17cef7
MD5 bd1e3259c5f6c45f3dd65f4075501fa4
BLAKE2b-256 4ad1401a733da6c6d7f0e526c7606593b2b0ae37382b8e17db4a381319cb98ee

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.21-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.21-cp312-none-any.whl
Algorithm Hash digest
SHA256 06552e919ea41a0c875b3e5e886aae71ab40dc99ae0404b9986fd8938d4445d5
MD5 54cfbf46725ec622d2896bb3f0e3c256
BLAKE2b-256 71f21853295a35b4636c46ea34080f82cd69c14fa749fa85195b2a2fbcd53ebd

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.21-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.21-cp311-none-any.whl
Algorithm Hash digest
SHA256 3ee41c5f044eeb73b815327b07aee2b249a4947c7522c5c09b132112109e527c
MD5 293b0616a952df7eb0b6bc7144cb050c
BLAKE2b-256 23f7b6ed8ad9f67684d2a5d0b7dd225b892097f3da87bb99638bc01a76cf8c22

See more details on using hashes here.

Provenance

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