Skip to main content

Pawzok 🐾

Follow the trail. Verify what actually happened.

Pawzok is a Python testing library for verifying application state without repetitive database connection, polling, and assertion code.

v0.1

The first release focuses on SQL state validation:

  • assert_sql() for concise database assertions
  • smart polling for eventually consistent state
  • clear, pytest-friendly failure messages
  • SQLite support with no external database required
  • a small foundation designed for future validators

Installation for development

git clone https://github.com/karthik1029/Pawzok.git
cd Pawzok
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
pytest

Quick start

from pawzok import assert_sql

assert_sql(
    connection="orders.db",
    query="""
        SELECT status
        FROM orders
        WHERE order_id = 123
    """,
    expected={"status": "CONFIRMED"},
)

For state that may take time to appear:

assert_sql(
    connection="orders.db",
    query="SELECT status FROM orders WHERE order_id = 123",
    expected={"status": "READY"},
    timeout=20,
    poll_every=2,
)

Pawzok keeps checking until the expected state appears or the timeout expires.

Roadmap

  • 0.1 — SQL assertions and smart polling
  • 0.2 — API validation
  • 0.3 — API + SQL workflow traces
  • 0.4 — event-stream validation
  • 0.5 — cross-system correlation

Why Pawzok?

A successful response does not always mean the system reached the correct state. Pawzok is being built to follow the trail of an operation and verify the state behind the response.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pawzok-0.1.0.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pawzok-0.1.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file pawzok-0.1.0.tar.gz.

File metadata

  • Download URL: pawzok-0.1.0.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pawzok-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e3f1d4415eaa5313a5497d8ab25a61d622ca583ae3a13eb7e165e3a75f149b7d
MD5 b2389c3eb4a15d2a0c2be8c79039ecea
BLAKE2b-256 9a8969f4b37e8b1218d47309ee10b13888d81ab9f5dcacde85fb939d47098d21

See more details on using hashes here.

Provenance

The following attestation bundles were made for pawzok-0.1.0.tar.gz:

Publisher: release.yml on karthik1029/Pawzok

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pawzok-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pawzok-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pawzok-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 91bb6dace13e1f9a2a1fb8d432e5471ca60cf6f22be4543f3805fd79e2bd9a15
MD5 2e99c0e253f4372b1c8c28103f1d1ac1
BLAKE2b-256 ec4604f9653eb9c56f97c51f0d0f542f2361fd9c566d76af3e08bcccb12335a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pawzok-0.1.0-py3-none-any.whl:

Publisher: release.yml on karthik1029/Pawzok

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

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