# Copyright 2026 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
# Tox configuration for testing releasekit across Python versions.
#
# Usage:
# tox Run tests on all configured Python versions
# tox -e py312 Run tests on Python 3.12 only
# tox -e lint Run ruff lint check
#
# Requires tox-uv for uv-based virtualenv creation:
# uv tool install tox --with tox-uv
[tox]
requires =
tox>=4
tox-uv>=1.25
env_list =
py310
py311
py312
py313
py314
lint
[testenv]
description = Run tests on {base_python}
deps =
pytest>=8.0.0
pytest-asyncio>=0.25.0
pytest-cov>=7.0.0
commands =
pytest {posargs:tests/ --tb=short -q}
[testenv:lint]
description = Run ruff lint and format checks
skip_install = true
deps =
ruff>=0.11.0
commands =
ruff check src/ tests/
ruff format --check src/ tests/