Skip to main content

Generate test configuration files and run tests

Project description

uvoxen - generate test configuration files and run tests

[Home | GitLab | PyPI | ReadTheDocs]

Overview

The uvoxen tool allows test environments to be defined in the pyproject.toml file with a syntax relatively similar to the one used for Tox configuration. It can then:

  • run tests defined in these environments using the uv tool
  • output Tox configuration and run Tox instead
  • export the dependency groups into text files

See the Getting started section for an introduction.

The uvoxen tool expects test dependencies to be defined as PEP 735 dependency groups in the pyproject.toml file.

Examples

These are some of the ways to use uvoxen; see the Getting started and the Configuration sections for more information.

Run tests using uv

The uvoxen uv run command runs one or more test environments in succession, recreating the .venv virtual environment in between. The commands defined in the environments are run using the uv tool.

uvoxen uv run

If the --python (-p) command-line option is specified before the uv subcommand, uvoxen will use that Python version to run the tests:

uvoxen -p 3.10 uv run -e mypy,unit-tests

If the special value supported is passed as a Python version, uvoxen will run all the selected environments for all the Python versions that are listed as supported in the project.classifiers section of the pyproject.toml file:

uvoxen -p supported uv run

Generate a Tox configuration file

The uvoxen tox generate command will export the environment definitions into a tox.ini file so that Tox may be used later (or separately):

uvoxen tox generate

If the --check command-line option is specified, uvoxen will not modify the tox.ini file, but it will exit with a non-zero code if any changes need to be made:

uvoxen tox generate --check

Generate requirements files from the dependency groups

The uvoxen req generate command will export the list of dependencies defined in the specified dependency group into a text file suitable for use with e.g. the ReadTheDocs mkdocs runner:

uvoxen req generate -g docs

If the --output (-o) option is not specified, the generated file will be named requirements/<group>.txt, e.g. requirements/docs.txt.

If the --check command-line option is specified, uvoxen will not modify the requirements/docs.txt file, but it will exit with a non-zero code if any changes need to be made:

uvoxen req generate --check -g docs

Contact

The uvoxen tool was written by Peter Pentchev. It is developed in a GitLab repository. This documentation is hosted at Ringlet with a copy at ReadTheDocs.

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

uvoxen-0.2.2.tar.gz (67.8 kB view details)

Uploaded Source

Built Distribution

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

uvoxen-0.2.2-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file uvoxen-0.2.2.tar.gz.

File metadata

  • Download URL: uvoxen-0.2.2.tar.gz
  • Upload date:
  • Size: 67.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for uvoxen-0.2.2.tar.gz
Algorithm Hash digest
SHA256 81551ec6d053f15486502040dc6a24a02ab87f37b4fd9fb1b4090c8af0599087
MD5 83457f5aa022264d67d934ea8abe2bf1
BLAKE2b-256 46de7e288cfb9ab58fae6d1e133ec086ed2c5e3ff86062a2ae94c94c018b877e

See more details on using hashes here.

File details

Details for the file uvoxen-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: uvoxen-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for uvoxen-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d4fa2b8fdb8f41f2f009e1c867b9ac532762dc96bdd2059c35573d98860745cf
MD5 2477aed8a0f223310c39a0e3aec9f67c
BLAKE2b-256 21d2469c45a8745b3a30744b0c3bc7321bbe3914c25808a0e0250f97befe532d

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