Skip to main content

A Python test quality toolkit written in Rust

Project description

tq logo

tq - Test Quality Toolkit

Documentation

tq inspects a codebase's tests and enforces quality rules so tests remain discoverable, focused, actionable, and maintainable.

Installation

PyPI distribution name: tqlint

Add to a project:

uv add --dev tqlint
uv run tq check

Run without installing (ephemeral):

uvx --from tqlint tq check

Install as a persistent global tool:

uv tool install tqlint
tq check

Install with pip:

python -m pip install tqlint
tq check

Note: uvx tq check is not currently available because the tq package name on PyPI is owned by another project. Use uvx --from tqlint tq ... for ephemeral runs.

Usage

Run checks:

uv run tq check

Configuration

Configure tq in pyproject.toml under [tool.tq]:

[tool.tq]
init_modules = "ignore"
max_test_file_non_blank_lines = 600
qualifier_strategy = "allowlist"
allowed_qualifiers = ["regression"]

[[tool.tq.targets]]
name = "tq"
package = "tq"
source_root = "src"
test_root = "tests"

Documentation

tq documentation

Language support

tq currently only analyzes Python source and Python tests (.py).

Development

Contributions are welcomed!

Contribution guidelines and development setup steps are documented in CONTRIBUTING.md.

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

tqlint-0.10.0.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

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

tqlint-0.10.0-py3-none-manylinux_2_31_x86_64.whl (687.2 kB view details)

Uploaded Python 3manylinux: glibc 2.31+ x86-64

File details

Details for the file tqlint-0.10.0.tar.gz.

File metadata

  • Download URL: tqlint-0.10.0.tar.gz
  • Upload date:
  • Size: 36.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tqlint-0.10.0.tar.gz
Algorithm Hash digest
SHA256 a0d5642cd42c04d67270af97d8baf60d9a8e452b9c72c71778798b7e1edde789
MD5 14741a8bcd16bc4e1c035b13dbb68ab1
BLAKE2b-256 9c5f10905aacbd1df656a6cbf05a3dd232af2a382b1b5b3799e3accd43992284

See more details on using hashes here.

File details

Details for the file tqlint-0.10.0-py3-none-manylinux_2_31_x86_64.whl.

File metadata

  • Download URL: tqlint-0.10.0-py3-none-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 687.2 kB
  • Tags: Python 3, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tqlint-0.10.0-py3-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 c324c2da1baa0a6248477bcebd2a71d74b6e2bf1eb5e1b7658400188e93c49d2
MD5 8d2d654481792234b085800ec12a8d20
BLAKE2b-256 0c64c4dd6a31ccd97a085d6a80907881f9b0b5784a0ee509d1cab4cd14dbc88c

See more details on using hashes here.

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