forked from ethereum/web3.py
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
88 lines (80 loc) · 2.68 KB
/
tox.ini
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
[tox]
envlist=
py{38,39,310,311,312}-{ens,core,lint,wheel}
py{38,39,310,311,312}-integration-{goethereum,ethtester}
docs
benchmark
windows-wheel
[flake8]
exclude= venv*,.tox,docs,build
extend-ignore=E203,W503
max-line-length=88
per-file-ignores=__init__.py:F401
[blocklint]
max_issue_threshold=1
[testenv]
allowlist_externals=make,pre-commit
install_command=python -m pip install {opts} {packages}
usedevelop=True
commands=
core: pytest {posargs:tests/core -m "not asyncio"}
core_async: pytest {posargs:tests/core -m asyncio}
ens: pytest {posargs:tests/ens --ignore=tests/ens/normalization/test_normalize_name_ensip15.py}
ensip15: pytest {posargs:tests/ens/normalization/test_normalize_name_ensip15.py -q}
integration-goethereum-ipc: pytest {posargs:tests/integration/go_ethereum/test_goethereum_ipc.py -k "not Async"}
integration-goethereum-ipc_async: pytest {posargs:tests/integration/go_ethereum/test_goethereum_ipc.py -k Async}
integration-goethereum-http: pytest {posargs:tests/integration/go_ethereum/test_goethereum_http.py -k "not Async"}
integration-goethereum-http_async: pytest {posargs:tests/integration/go_ethereum/test_goethereum_http.py -k Async}
integration-goethereum-legacy_ws: pytest {posargs:tests/integration/go_ethereum/test_goethereum_legacy_ws.py}
integration-goethereum-ws: pytest {posargs:tests/integration/go_ethereum/test_goethereum_ws}
integration-ethtester: pytest {posargs:tests/integration/test_ethereum_tester.py}
docs: make check-docs-ci
deps =
.[test]
; install both `docs` and `test` dependencies for the `docs` environment
docs: .[docs]
passenv =
GETH_BINARY
GOROOT
GOPATH
WEB3_INFURA_PROJECT_ID
WEB3_INFURA_API_SECRET
basepython =
docs: python
windows-wheel: python
py38: python3.8
py39: python3.9
py310: python3.10
py311: python3.11
py312: python3.12
[testenv:py{38,39,310,311,312}-lint]
deps=pre-commit
extras=dev
commands=
pre-commit install
pre-commit run --all-files --show-diff-on-failure
[testenv:benchmark]
basepython=python
commands=
python {toxinidir}/web3/tools/benchmark/main.py --num-calls 5
python {toxinidir}/web3/tools/benchmark/main.py --num-calls 50
python {toxinidir}/web3/tools/benchmark/main.py --num-calls 100
[testenv:py{38,39,310,311,312}-wheel]
deps=
wheel
build[virtualenv]
allowlist_externals=
/bin/rm
/bin/bash
commands=
/bin/bash {toxinidir}/web3/scripts/release/test_wheel_install.sh
skip_install=true
[testenv:windows-wheel]
deps=
wheel
build[virtualenv]
allowlist_externals=
bash.exe
commands=
bash.exe {toxinidir}/web3/scripts/release/test_windows_wheel_install.sh
skip_install=true