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.17.tar.gz (72.2 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.17-cp313-none-any.whl (23.9 kB view details)

Uploaded CPython 3.13

tap_producer-1.5.17-cp312-none-any.whl (23.8 kB view details)

Uploaded CPython 3.12

tap_producer-1.5.17-cp311-none-any.whl (24.6 kB view details)

Uploaded CPython 3.11

File details

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

File metadata

  • Download URL: tap_producer-1.5.17.tar.gz
  • Upload date:
  • Size: 72.2 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.17.tar.gz
Algorithm Hash digest
SHA256 7e2f2a8476391ca8e610ef2443bbfa4f90b3e88edc61e741b9f25d781e6855bc
MD5 5610baa0e5667b3f8376ea3c3caf72b8
BLAKE2b-256 c788ad88cefd20c462479df59ca1ce04d1c897fdd2226fdf70bba685d07d800c

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.17-cp313-none-any.whl
  • Upload date:
  • Size: 23.9 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.17-cp313-none-any.whl
Algorithm Hash digest
SHA256 4434e7f730af30daedd3acbc06bcad95f9fec23577424bae66895dd7d1bbdd14
MD5 66cdec26aadcc8862f3b433c3b67850b
BLAKE2b-256 e82ee0fc184f4bfa68bd41f2de99809a4f1a4822ffa4a91cd9eed89202271dc9

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.17-cp312-none-any.whl
  • Upload date:
  • Size: 23.8 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.17-cp312-none-any.whl
Algorithm Hash digest
SHA256 91d7bc6cb1e88fe25e8023ae8a73efd963c9c30b74e7c35696d4b3dd01599041
MD5 24e1871bcda00262ebe88b47e4cd442e
BLAKE2b-256 dd2843d42d01f961e2b38de6b6f85e0fb351892000c41e3c135a2495ae30bba4

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tap_producer-1.5.17-cp311-none-any.whl
  • Upload date:
  • Size: 24.6 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.17-cp311-none-any.whl
Algorithm Hash digest
SHA256 c554a2dccdc2c813371e94408c0295314d51830239c6d1c329d8b3037591fdca
MD5 e0b71cac1fd88757ee2e08e639dfb34b
BLAKE2b-256 f67964489d645fb6c4f5f9512677dce603d9288e839c295364547faf77b13eef

See more details on using hashes here.

Provenance

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