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.9.1.tar.gz (34.7 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.9.1-py3-none-manylinux_2_31_x86_64.whl (672.3 kB view details)

Uploaded Python 3manylinux: glibc 2.31+ x86-64

File details

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

File metadata

  • Download URL: tqlint-0.9.1.tar.gz
  • Upload date:
  • Size: 34.7 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.9.1.tar.gz
Algorithm Hash digest
SHA256 be6d63b8fb9c5581fba63cf141179003433d3cccdf80d526e41232ab8a4859fd
MD5 133993ae272985b92ed40a098f5fe290
BLAKE2b-256 e64d0cf37ee9df99f6522527dfd6d97dc9ea79b52aebfd971c6106130437ce0d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tqlint-0.9.1-py3-none-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 672.3 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.9.1-py3-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 62c0d5e31b040d8268cfe1f681a109cc3a132323579bc9ec91cedb06f3a2650a
MD5 34a4e89723f3313358833e66ed0425f1
BLAKE2b-256 44c712dca408f4949a77cc1bd37acfc5e3e1bc0efffc8f8b96112328ecb976ed

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