-
Notifications
You must be signed in to change notification settings - Fork 85
/
tox.ini
111 lines (86 loc) · 2.67 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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
[tox]
env_list =
framework
tests
docs
[forks]
develop = Prague
eip7692 = Osaka
[testenv]
runner = uv-venv-lock-runner
package = wheel
wheel_build_env = .pkg
[testenv:framework]
description = Run checks on helper libraries and test framework
setenv =
# Only use EELS_RESOLUTIONS_FILE if it is set in the environment (eg, in CI)
EELS_RESOLUTIONS_FILE = {env:EELS_RESOLUTIONS_FILE:}
extras =
test
lint
src = src
commands_pre = solc-select use 0.8.24 --always-install
commands =
fname8 {[testenv:framework]src}
isort {[testenv:framework]src} --check --diff
black {[testenv:framework]src} --check --diff
flake8 {[testenv:framework]src}
mypy {[testenv:framework]src}
pytest -c ./pytest-framework.ini -n auto -m "not run_in_serial"
pytest -c ./pytest-framework.ini -m run_in_serial
[testenv:py3]
description = An alias for the 'framework' tox environment
deps = {[testenv:framework]deps}
extras = {[testenv:framework]extras}
allowlist_externals = {[testenv:framework]allowlist_externals}
commands = {[testenv:framework]commands}
[testenv:tests-base]
extras =
test
lint
commands =
fname8 tests
isort tests --check --diff
black tests --check --diff
flake8 tests
mypy tests
[testenv:tests]
description = Execute test cases in tests/
extras =
{[testenv:tests-base]extras}
commands =
{[testenv:tests-base]commands}
pytest -n auto -k "not slow"
[testenv:tests-develop]
description = Execute test cases in tests/, including tests for development forks
extras =
{[testenv:tests-base]extras}
commands =
pytest -n auto --until={[forks]develop} -k "not slow"
[testenv:tests-eip7692]
description = Execute test cases in tests/, including tests for EIP-7692 (EOF)
extras =
{[testenv:tests-base]extras}
commands =
pytest -n auto --evm-bin=evmone-t8n --fork={[forks]eip7692} -k "not slow" ./tests/osaka
[testenv:docs]
description = Run documentation checks
extras =
lint
docs
setenv =
SPEC_TESTS_AUTO_GENERATE_FILES = true
GEN_TEST_DOC_VERSION = "tox"
# Required for `cairosvg` so tox can find `libcairo-2`.
# https://squidfunk.github.io/mkdocs-material/plugins/requirements/image-processing/?h=cairo#cairo-library-was-not-found
DYLD_FALLBACK_LIBRARY_PATH = /opt/homebrew/lib
src = docs/gen_test_case_reference.py
commands =
fname8 {[testenv:docs]src}
isort {[testenv:docs]src} --check --diff
black {[testenv:docs]src} --check --diff
flake8 {[testenv:docs]src}
mypy {[testenv:docs]src}
python -c "import src.cli.tox_helpers; src.cli.tox_helpers.pyspelling()"
python -c "import src.cli.tox_helpers; src.cli.tox_helpers.markdownlint()"
mkdocs build --strict