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

Uploaded CPython 3.13

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

Uploaded CPython 3.12

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

Uploaded CPython 3.11

File details

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

File metadata

  • Download URL: tap_producer-1.5.20.tar.gz
  • Upload date:
  • Size: 74.6 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.20.tar.gz
Algorithm Hash digest
SHA256 b35e96d22a0d11712f43675e2ca638a0964715e610649017c76b01742c588540
MD5 41841062c3d9b2b926cc882d0f8244c7
BLAKE2b-256 6b6436940b21cad97f3ba0b8ab782783939887645f84898fcb95121471df33f1

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.20-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.20-cp313-none-any.whl
Algorithm Hash digest
SHA256 b08057cb37643e624f535ce16b660ec180e2447cea0f878556965a931c6441a3
MD5 5ee7f73dcbc0495cc67beb1bc236ed1d
BLAKE2b-256 d146b7287fb569aed48118d305fdbc8061c874989bdf4fd3912c0f484eb2eb94

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.20-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.20-cp312-none-any.whl
Algorithm Hash digest
SHA256 e0b10b965db5cc0578396ffe5e071075e15ff5dca4d8394f940177218947c8cc
MD5 dea22334adc78c6d9d61ee200c2f8d77
BLAKE2b-256 d8223c51488fa79e9156760f5e6c8f4d03f3440dae9e6077789cc86994d48072

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.20-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.20-cp311-none-any.whl
Algorithm Hash digest
SHA256 e29343d9ba8b5ad176457b0e4d7ae0a3e4f6ef8630af23764b131b0b3dfcee26
MD5 d467d5129c27b1b108bfaa5b3570d773
BLAKE2b-256 0975e89ba08f71f464b704e07aaa02807b289ebd623f5e4436c32f21cf2e8c1d

See more details on using hashes here.

Provenance

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