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.1.tar.gz (37.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.10.1-py3-none-manylinux_2_31_x86_64.whl (687.0 kB view details)

Uploaded Python 3manylinux: glibc 2.31+ x86-64

File details

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

File metadata

  • Download URL: tqlint-0.10.1.tar.gz
  • Upload date:
  • Size: 37.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.4 {"installer":{"name":"uv","version":"0.11.4","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.1.tar.gz
Algorithm Hash digest
SHA256 48137a99e6aafecd943a20bf7d9bf26d0c683d82160759088e7957d4561bfe7d
MD5 e49b86a3da6890890a41cabf6ee8249a
BLAKE2b-256 cfa31f75adfe9fb692b81de146c8ff450a5c7f8780b1d829cabd7e59ada297e0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tqlint-0.10.1-py3-none-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 687.0 kB
  • Tags: Python 3, manylinux: glibc 2.31+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.4 {"installer":{"name":"uv","version":"0.11.4","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.1-py3-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 f0109acf305ed277a63abd60f3165bdfa6cc91e135c44adaf87938c4da332ec0
MD5 fffa87f5e6f07e5dd308602df23c2ef7
BLAKE2b-256 d8fbdfc2a6a0795497955e5387aefcef00443aba44498e1aa85c01988e06c8b7

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