47 lines
1.5 KiB
INI

# tox (https://tox.readthedocs.io/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.
[tox]
envlist = py3-quick,{py36,py39}-full,py3-airflow1
[gh-actions]
python =
3.6: py36-full
3.9: py39-full
# Providing optional features that add dependencies from setup.py as deps here
# allows tox to recreate testenv when new dependencies are added to setup.py.
# Previous approach of using the tox global setting extras is not recommended
# as extras is only called when the testenv is created for the first time!
# see more here -> https://github.com/tox-dev/tox/issues/1105#issuecomment-448596282
[testenv]
deps =
-rtox_requirements/dev_requirements.txt
commands =
pytest --cov={envsitepackagesdir}/datahub --cov={envsitepackagesdir}/datahub_provider \
py3-quick: -m 'not integration and not slow_integration' --junit-xml=junit.quick.xml \
py36-full: --cov-fail-under 68 --junit-xml=junit.full.xml \
--continue-on-collection-errors \
-vv \
py39-full: --cov-fail-under 70 --junit-xml=junit.full.xml \
--continue-on-collection-errors \
-vv
setenv =
AIRFLOW_HOME = /tmp/airflow/thisshouldnotexist-{envname}
[testenv:py3-airflow1]
deps =
.[dev-airflow1]
[testenv:py39-full]
deps =
-rtox_requirements/py39-full_requirements.txt
[testenv:py36-full]
deps =
-rtox_requirements/py36-full_requirements.txt