-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtox.ini
103 lines (95 loc) · 2.1 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
[tox]
# Don't use "min_version", to ensure Tox 3 respects this
minversion = 4
env_list =
lint,
type,
test,
[testenv]
base_python = python3.11
# Building and installing wheels is significantly faster
package = wheel
[testenv:lint]
package = skip
deps =
flake8
flake8-black
flake8-bugbear
flake8-docstrings
flake8-isort
pep8-naming
yamlfix
commands =
flake8 {posargs:.}
yamlfix -c pyproject.toml --exclude ./build/**/* --exclude ./client/node_modules/**/* . --check
[testenv:format]
package = skip
deps =
black
isort
yamlfix
commands =
isort {posargs:.}
black {posargs:.}
yamlfix -c pyproject.toml --exclude ./build/**/* --exclude ./client/node_modules/**/* .
[testenv:type]
# Editable ensures dependencies are installed, but full packaging isn't necessary
package = editable
deps =
mypy
pytest
types-PyYAML
types-Pillow
commands =
mypy {posargs:.}
[testenv:test]
deps =
freezegun
# httpx is needed for FastApi testing
httpx
pytest
pytest-asyncio
pytest-mock
pytest-timeout
pooch
commands =
pytest tests {posargs}
[testenv:binary]
deps =
pyinstaller
commands =
pyinstaller \
--clean \
--noconfirm \
--onefile \
--name imagedephi \
--recursive-copy-metadata imagedephi \
--collect-data imagedephi \
--collect-submodules pydicom.encoders \
--specpath {env_tmp_dir} \
--workpath {env_tmp_dir} \
{env_site_packages_dir}/imagedephi/__main__.py
[flake8]
max-line-length = 100
show-source = true
extend-exclude =
.mypy_cache
# Expect many developers to create a virtual environment here
.venv
.direnv
client
ignore =
# closing bracket does not match indentation of opening bracket’s line
E123,
# whitespace before ':'
E203,
# line break before binary operator
W503,
# Missing docstring in *
D10,
# Multiple statements on one line (https://github.com/psf/black/issues/3887)
E704,
[yamlfix]
line_length = 200
preserve_quotes = True
sequence_style = YamlNodeStyle.BLOCK_STYLE