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.11.0.tar.gz (38.4 kB view details)

Uploaded Source

Built Distributions

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

tqlint-0.11.0-py3-none-win_amd64.whl (577.0 kB view details)

Uploaded Python 3Windows x86-64

tqlint-0.11.0-py3-none-manylinux_2_31_x86_64.whl (688.8 kB view details)

Uploaded Python 3manylinux: glibc 2.31+ x86-64

tqlint-0.11.0-py3-none-macosx_11_0_arm64.whl (623.0 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

tqlint-0.11.0-py3-none-macosx_10_12_x86_64.whl (655.7 kB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: tqlint-0.11.0.tar.gz
  • Upload date:
  • Size: 38.4 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.11.0.tar.gz
Algorithm Hash digest
SHA256 789c92c899d03dc21fde65a7664bf2a222b2ee9ccefd533cdeee6e78421c9888
MD5 e6f96ae320c58dcc67a2c6636304b77e
BLAKE2b-256 a57c62b761bc097efdc4d5cd6501480033557f513b006f0340e8c7afb4662efd

See more details on using hashes here.

File details

Details for the file tqlint-0.11.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: tqlint-0.11.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 577.0 kB
  • Tags: Python 3, Windows 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.11.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 1f27e189330dc834f0274533b7a5689272a8de59e2ab292b1ddff1812cadd3bc
MD5 c8668f945c39b106644a3561a5054b87
BLAKE2b-256 9557040e282e14683c5ea3570aa049e00e35b1403ac28fa9452755d192f71020

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tqlint-0.11.0-py3-none-manylinux_2_31_x86_64.whl
  • Upload date:
  • Size: 688.8 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.11.0-py3-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 6820d1794e3d0761407c58c92da70a91cce8daf97fc6590e15437113d39edd98
MD5 065edc7bb8e8ca1a3bbe07636a2b799c
BLAKE2b-256 59921142abc5ea165d85a0b4c95119b862fc99bee2aceb4fe4071a07026afdc3

See more details on using hashes here.

File details

Details for the file tqlint-0.11.0-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: tqlint-0.11.0-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 623.0 kB
  • Tags: Python 3, macOS 11.0+ ARM64
  • 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.11.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed360b9c138b07052f4e1c451fcff1bf07b490666cc8ecf4be9908167d9a6fbf
MD5 0f4045be522f9218ac496899742668ff
BLAKE2b-256 6cf0e202cb98a35bf0cf84ab4ce9d329ba8a08e735a0f6a28ee899b97b1c505e

See more details on using hashes here.

File details

Details for the file tqlint-0.11.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: tqlint-0.11.0-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 655.7 kB
  • Tags: Python 3, macOS 10.12+ 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.11.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ffb5e7460b7452721765f5d7ce38614d409295fe8192857ce8b861e22137523a
MD5 be9582bbfdf1c3e1560b4cb133056ad0
BLAKE2b-256 9ef731f767f5c9d265d54dc26ffdbbe1bed949c23bb1e84fc6c937cbef074577

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