Skip to content

Commit 9e9bbb2

Browse files
authored
Maintenance upgrades tests and tools libraries (ITISFoundation#5346)
1 parent d2b722c commit 9e9bbb2

File tree

103 files changed

+1004
-5100
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+1004
-5100
lines changed

api/tests/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ all: install test-dev
1010
requirements.txt: requirements.in
1111
# pip compiling $<
1212
uv pip compile $(UPGRADE_OPTION) \
13+
--no-header \
1314
--output-file $@ $<
1415
reqs: requirements.txt ## alias to compile requirements.txt
1516

api/tests/requirements.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ aiohttp
55
coverage
66
openapi-core
77
pytest
8-
pytest-aiohttp
8+
pytest-asyncio
99
pytest-cov
1010
pytest-instafail
1111
pytest-sugar

api/tests/requirements.txt

Lines changed: 10 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,6 @@
1-
#
2-
# This file is autogenerated by pip-compile with Python 3.10
3-
# by the following command:
4-
#
5-
# pip-compile --output-file=requirements.txt --strip-extras requirements.in
6-
#
71
aiohttp==3.8.6
8-
# via
9-
# -c ../../requirements/constraints.txt
10-
# -r requirements.in
11-
# pytest-aiohttp
122
aiosignal==1.3.1
133
# via aiohttp
14-
asgiref==3.7.2
15-
# via openapi-core
164
async-timeout==4.0.3
175
# via aiohttp
186
attrs==23.1.0
@@ -21,17 +9,13 @@ attrs==23.1.0
219
# jsonschema
2210
# referencing
2311
certifi==2023.7.22
24-
# via
25-
# -c ../../requirements/constraints.txt
26-
# requests
12+
# via requests
2713
charset-normalizer==3.3.2
2814
# via
2915
# aiohttp
3016
# requests
3117
coverage==7.3.2
32-
# via
33-
# -r requirements.in
34-
# pytest-cov
18+
# via pytest-cov
3519
exceptiongroup==1.1.3
3620
# via pytest
3721
frozenlist==1.4.0
@@ -51,7 +35,7 @@ jsonschema==4.19.2
5135
# openapi-core
5236
# openapi-schema-validator
5337
# openapi-spec-validator
54-
jsonschema-spec==0.2.4
38+
jsonschema-path==0.3.2
5539
# via
5640
# openapi-core
5741
# openapi-spec-validator
@@ -69,13 +53,12 @@ multidict==6.0.4
6953
# via
7054
# aiohttp
7155
# yarl
72-
openapi-core==0.18.1
73-
# via -r requirements.in
56+
openapi-core==0.19.0
7457
openapi-schema-validator==0.6.2
7558
# via
7659
# openapi-core
7760
# openapi-spec-validator
78-
openapi-spec-validator==0.6.0
61+
openapi-spec-validator==0.7.1
7962
# via openapi-core
8063
packaging==23.2
8164
# via
@@ -84,38 +67,28 @@ packaging==23.2
8467
parse==1.19.1
8568
# via openapi-core
8669
pathable==0.4.3
87-
# via jsonschema-spec
70+
# via jsonschema-path
8871
pluggy==1.3.0
8972
# via pytest
9073
pytest==7.4.3
9174
# via
92-
# -r requirements.in
93-
# pytest-aiohttp
9475
# pytest-asyncio
9576
# pytest-cov
9677
# pytest-instafail
9778
# pytest-sugar
98-
pytest-aiohttp==1.0.5
99-
# via -r requirements.in
10079
pytest-asyncio==0.21.1
101-
# via pytest-aiohttp
10280
pytest-cov==4.1.0
103-
# via -r requirements.in
10481
pytest-instafail==0.5.0
105-
# via -r requirements.in
10682
pytest-sugar==0.9.7
107-
# via -r requirements.in
10883
pyyaml==6.0.1
109-
# via
110-
# -c ../../requirements/constraints.txt
111-
# jsonschema-spec
84+
# via jsonschema-path
11285
referencing==0.30.2
11386
# via
11487
# jsonschema
115-
# jsonschema-spec
88+
# jsonschema-path
11689
# jsonschema-specifications
11790
requests==2.31.0
118-
# via jsonschema-spec
91+
# via jsonschema-path
11992
rfc3339-validator==0.1.4
12093
# via openapi-schema-validator
12194
rpds-py==0.10.6
@@ -132,12 +105,8 @@ tomli==2.0.1
132105
# via
133106
# coverage
134107
# pytest
135-
typing-extensions==4.8.0
136-
# via asgiref
137108
urllib3==2.0.7
138-
# via
139-
# -c ../../requirements/constraints.txt
140-
# requests
109+
# via requests
141110
werkzeug==3.0.1
142111
# via openapi-core
143112
yarl==1.9.2

api/tests/test_full_openapis.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
from pathlib import Path
22

33
import pytest
4-
from openapi_spec_validator import validate_spec
54
from openapi_spec_validator.exceptions import OpenAPISpecValidatorError
5+
from openapi_spec_validator.shortcuts import get_validator_cls
66
from utils import is_openapi_schema, list_files_in_api_specs, load_specs
77

88
# NOTE: parametrizing tests per file makes more visible which file failed
@@ -12,12 +12,14 @@
1212
@pytest.mark.parametrize(
1313
"spec_file_path",
1414
list_files_in_api_specs("*.json") + list_files_in_api_specs("*.y*ml"),
15-
ids=lambda o: o.name,
15+
ids=lambda o: f"{o.parent.name}/{o.name}",
1616
)
1717
def test_valid_openapi_specs(spec_file_path: Path):
1818
specs = load_specs(spec_file_path)
1919
if is_openapi_schema(specs):
2020
try:
21-
validate_spec(specs, spec_url=spec_file_path.as_uri())
21+
openapi_validator_cls = get_validator_cls(specs)
22+
openapi_validator_cls(specs)
23+
2224
except OpenAPISpecValidatorError as err:
2325
pytest.fail(f"Failed validating {spec_file_path}:\n{err.message}")

packages/aws-library/requirements/_base.txt

Lines changed: 2 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,13 @@
1-
#
2-
# This file is autogenerated by pip-compile with Python 3.10
3-
# by the following command:
4-
#
5-
# pip-compile --output-file=requirements/_base.txt --strip-extras requirements/_base.in
6-
#
71
aio-pika==9.3.0
8-
# via -r requirements/../../../packages/service-library/requirements/_base.in
92
aioboto3==12.0.0
10-
# via -r requirements/_base.in
113
aiobotocore==2.7.0
12-
# via
13-
# aioboto3
14-
# aiobotocore
4+
# via aioboto3
155
aiocache==0.12.2
16-
# via -r requirements/_base.in
176
aiodebug==2.3.0
18-
# via -r requirements/../../../packages/service-library/requirements/_base.in
197
aiodocker==0.21.0
20-
# via -r requirements/../../../packages/service-library/requirements/_base.in
218
aiofiles==23.2.1
22-
# via -r requirements/../../../packages/service-library/requirements/_base.in
239
aiohttp==3.8.6
2410
# via
25-
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
26-
# -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
27-
# -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
28-
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
29-
# -c requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
30-
# -c requirements/../../../requirements/constraints.txt
3111
# aiobotocore
3212
# aiodocker
3313
aioitertools==0.11.0
@@ -37,10 +17,6 @@ aiormq==6.7.7
3717
aiosignal==1.3.1
3818
# via aiohttp
3919
arrow==1.3.0
40-
# via
41-
# -r requirements/../../../packages/models-library/requirements/_base.in
42-
# -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in
43-
# -r requirements/../../../packages/service-library/requirements/_base.in
4420
async-timeout==4.0.3
4521
# via
4622
# aiohttp
@@ -80,9 +56,6 @@ jmespath==1.0.1
8056
# boto3
8157
# botocore
8258
jsonschema==4.19.2
83-
# via
84-
# -r requirements/../../../packages/models-library/requirements/_base.in
85-
# -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in
8659
jsonschema-specifications==2023.7.1
8760
# via jsonschema
8861
markdown-it-py==3.0.0
@@ -94,82 +67,37 @@ multidict==6.0.4
9467
# aiohttp
9568
# yarl
9669
orjson==3.9.10
97-
# via
98-
# -r requirements/../../../packages/models-library/requirements/_base.in
99-
# -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in
10070
pamqp==3.2.1
10171
# via aiormq
10272
pydantic==1.10.13
103-
# via
104-
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
105-
# -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
106-
# -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
107-
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
108-
# -c requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
109-
# -c requirements/../../../requirements/constraints.txt
110-
# -r requirements/../../../packages/models-library/requirements/_base.in
111-
# -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in
112-
# -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/_base.in
113-
# -r requirements/../../../packages/service-library/requirements/_base.in
114-
# -r requirements/../../../packages/settings-library/requirements/_base.in
115-
# -r requirements/_base.in
11673
pygments==2.16.1
11774
# via rich
11875
pyinstrument==4.6.1
119-
# via -r requirements/../../../packages/service-library/requirements/_base.in
12076
python-dateutil==2.8.2
12177
# via
12278
# arrow
12379
# botocore
12480
pyyaml==6.0.1
125-
# via
126-
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
127-
# -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
128-
# -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
129-
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
130-
# -c requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
131-
# -c requirements/../../../requirements/constraints.txt
132-
# -r requirements/../../../packages/service-library/requirements/_base.in
13381
redis==5.0.1
134-
# via
135-
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
136-
# -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
137-
# -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
138-
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
139-
# -c requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
140-
# -c requirements/../../../requirements/constraints.txt
141-
# -r requirements/../../../packages/service-library/requirements/_base.in
14282
referencing==0.29.3
14383
# via
144-
# -c requirements/../../../packages/service-library/requirements/./constraints.txt
14584
# jsonschema
14685
# jsonschema-specifications
14786
rich==13.6.0
148-
# via
149-
# -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/_base.in
150-
# -r requirements/../../../packages/settings-library/requirements/_base.in
15187
rpds-py==0.12.0
15288
# via
15389
# jsonschema
15490
# referencing
15591
s3transfer==0.7.0
15692
# via boto3
15793
sh==2.0.6
158-
# via -r requirements/_base.in
15994
six==1.16.0
16095
# via python-dateutil
16196
tenacity==8.2.3
162-
# via -r requirements/../../../packages/service-library/requirements/_base.in
16397
toolz==0.12.0
164-
# via -r requirements/../../../packages/service-library/requirements/_base.in
16598
tqdm==4.66.1
166-
# via -r requirements/../../../packages/service-library/requirements/_base.in
16799
typer==0.9.0
168-
# via
169-
# -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/_base.in
170-
# -r requirements/../../../packages/settings-library/requirements/_base.in
171100
types-aiobotocore==2.7.0
172-
# via -r requirements/_base.in
173101
types-aiobotocore-ec2==2.7.0
174102
# via types-aiobotocore
175103
types-aiobotocore-s3==2.7.0
@@ -188,14 +116,7 @@ typing-extensions==4.8.0
188116
# types-aiobotocore-ec2
189117
# types-aiobotocore-s3
190118
urllib3==2.0.7
191-
# via
192-
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
193-
# -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
194-
# -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
195-
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
196-
# -c requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
197-
# -c requirements/../../../requirements/constraints.txt
198-
# botocore
119+
# via botocore
199120
wrapt==1.16.0
200121
# via aiobotocore
201122
yarl==1.9.2

packages/aws-library/requirements/_test.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ faker
1414
moto[server]
1515
pint
1616
pytest
17-
pytest-aiohttp # incompatible with pytest-asyncio. See https://github.com/pytest-dev/pytest-asyncio/issues/76
17+
pytest-asyncio
1818
pytest-cov
1919
pytest-icdiff
2020
pytest-instafail

0 commit comments

Comments
 (0)