aboutsummaryrefslogtreecommitdiffstats
path: root/tox.ini
blob: 8c8fbaa21c616e5be00e4e4c5a69e385c855edc2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
[tox]
envlist = py35, py36, py37, lint, individual_coverage, wheeltest, docs
skipsdist = True
toxworkdir={env:TOX_WORK_DIR:.tox}

[testenv]
deps =
  {env:CI_DEPS:}
  -rrequirements.txt
passenv = CODECOV_TOKEN CI CI_* TRAVIS TRAVIS_* APPVEYOR APPVEYOR_* SNAPSHOT_* OPENSSL RTOOL_*
setenv = HOME = {envtmpdir}
commands =
  mitmdump --version
  pytest --timeout 60 --cov-report='' \
    --cov=mitmproxy --cov=pathod --cov=release \
    --full-cov=mitmproxy/ --full-cov=pathod/ \
    {posargs}
  {env:CI_COMMANDS:python -c ""}

[testenv:py35]
whitelist_externals =
  bash
deps =
  -rrequirements.txt
commands =
  bash -c "mitmdump --version 2>&1 | grep 'mitmproxy requires Python 3.6'"

[testenv:lint]
commands =
  mitmdump --version
  flake8 --jobs 8 mitmproxy pathod examples test release
  python ./test/filename_matching.py
  rstcheck README.rst
  mypy --ignore-missing-imports ./mitmproxy ./pathod
  mypy --ignore-missing-imports --follow-imports=skip  ./examples/simple/ ./examples/pathod/ ./examples/complex/

[testenv:individual_coverage]
deps =
  -rrequirements.txt
commands =
  python ./test/individual_coverage.py

[testenv:cibuild]
passenv = TRAVIS_* APPVEYOR_* AWS_* TWINE_* DOCKER_* RTOOL_KEY WHEEL DOCKER PYINSTALLER WININSTALLER
deps =
  -rrequirements.txt
  pyinstaller==3.5
  twine==2.0.0
  awscli
commands =
  mitmdump --version
  python ./release/cibuild.py {posargs}

[testenv:wheeltest]
recreate = True
deps =
commands =
  pip install {posargs}
  mitmproxy --version
  mitmdump --version
  mitmweb --version
  pathod --version
  pathoc --version

[testenv:docs]
passenv = TRAVIS_* APPVEYOR_* AWS_*
deps =
  -rrequirements.txt
  awscli
changedir = docs
commands =
  ./ci