Skip to main content

pytest-intent

The @intent decorator for pytest - links a test function to one or more CSD intent claims.

Published on PyPI as csd-pytest-intent - the bare name pytest-intent belongs to an unrelated plugin there. The import name is pytest_intent either way.

CSD (Cognitive Software Delivery) is a language-agnostic methodology. This package is one specific implementation, scoped to Python projects using pytest.

What this package is

A tiny library (~40 LOC) that exposes a single decorator:

from pytest_intent import intent

@intent("INT-001")
def test_resource_ids_unique(data_dir):
    ...

@intent("INT-021", "INT-022")  # one test serves two claims
def test_referential_integrity(data_dir):
    ...

That's the entire public surface.

What it is NOT

  • Not a validator. Schema checks (CSD-INTENT-01), orphan detection (test references unknown claim), and cross-runtime coverage all live in the standalone csd-intent CLI - point it at any project to audit.
  • Not a pytest plugin. Just a decorator. No fixtures, no entry points, no autoloading. Drop the import in your tests and you're done.
  • Not a generator. You write your tests; this annotates them.

Why split the decorator from the auditor?

  • One concern per package. The decorator runs inside pytest; the auditor is cross-language and runs standalone (CI step, pre-commit, ad-hoc).
  • No coupling. Other test runners (vitest-intent, playwright-intent) expose the same intent() marker shape. The auditor reads all of them, regardless of which decorator package put the marker there.
  • Tiny install. pytest-intent has no dependency on PyYAML or anything beyond pytest. The auditor pulls those in only when you actually need to audit.

Install

# From PyPI (the distribution is csd-pytest-intent; the import stays pytest_intent):
pip install csd-pytest-intent

# Local dev against a csd-library checkout:
pip install -e path/to/csd-library/pytest-intent

Companion: csd-intent

To validate your intent.yaml against CSD-INTENT-01 and check that every claim has a test:

pip install csd-intent
csd-intent /path/to/your/project

See csd-intent README for full options.

License

MIT.

Metadata

Release files for csd-pytest-intent 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for csd-pytest-intent 0.3.0
File Size Uploaded Provenance Actions
csd_pytest_intent-0.3.0.tar.gz 5.0 kB With provenance Details for csd_pytest_intent-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for csd-pytest-intent 0.3.0
File Interpreter ABI Platform Actions
csd_pytest_intent-0.3.0-py3-none-any.whl Python 3 none any Details for csd_pytest_intent-0.3.0-py3-none-any.whl

Total release size: 10.1 kB

Release files / csd_pytest_intent-0.3.0.tar.gz

Download URL csd_pytest_intent-0.3.0.tar.gz
Size 5.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c273cb1b0fcd91bb410242f5a609f37b4c8c1136998a2dfa09262bd6e5b4f26f
BLAKE2b-256 checksum
How to use checksums
ddc05e16b83e1fc631e75227ee15b1c437269db13e06dee65a6e2b6be9fa0de0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release files / csd_pytest_intent-0.3.0-py3-none-any.whl

Download URL csd_pytest_intent-0.3.0-py3-none-any.whl
Size 5.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
29c3efbff62c50e241be754e3466b80eb0438670d2f2937d83c7be50e90c9977
BLAKE2b-256 checksum
How to use checksums
0579b7e4e7b8da46e73f6640d402618844d3a03b9e516a615c3356c2ccf83863
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Security for csd-pytest-intent 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for csd_pytest_intent-0.3.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page