[tox]
envlist = py38,py39,py310,py311,py312,py313,{py38,py39,py310,py311,py312,py313}-{flake8,mypy}
skipsdist=True
skip_missing_interpreters=False

[testenv]
deps =
  !flake8-!mypy: -r{toxinidir}/requirements_pytest.txt
  !flake8-!mypy: -r{toxinidir}/requirements_tests.txt
  flake8: -r{toxinidir}/requirements_flake8.txt
  mypy: -r{toxinidir}/requirements_mypy.txt

changedir =
  mypy: {toxinidir}/..

commands =
  !flake8-!mypy: pytest --cov=tools --cov-report=term {posargs}
  flake8: flake8 --append-config={toxinidir}/flake8.ini {posargs}
  mypy: mypy --config-file={toxinidir}/mypy.ini --explicit-package-bases tools

passenv =
  HYPOTHESIS_PROFILE
  PY_COLORS
  TASKCLUSTER_ROOT_URL
