Skip to content

Commit 7cc2ec0

Browse files
TechNiickScirlat Danut
andauthored
Add type hints to test_schemas.py (#2490)
Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
1 parent c811ebd commit 7cc2ec0

1 file changed

Lines changed: 21 additions & 13 deletions

File tree

tests/test_schemas.py

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,27 @@
1+
from typing import Callable
2+
13
from starlette.applications import Starlette
24
from starlette.endpoints import HTTPEndpoint
5+
from starlette.requests import Request
6+
from starlette.responses import Response
37
from starlette.routing import Host, Mount, Route, Router, WebSocketRoute
48
from starlette.schemas import SchemaGenerator
9+
from starlette.testclient import TestClient
10+
from starlette.websockets import WebSocket
511

612
schemas = SchemaGenerator(
713
{"openapi": "3.0.0", "info": {"title": "Example API", "version": "1.0"}}
814
)
915

16+
TestClientFactory = Callable[..., TestClient]
17+
1018

11-
def ws(session):
19+
def ws(session: WebSocket) -> None:
1220
"""ws"""
1321
pass # pragma: no cover
1422

1523

16-
def get_user(request):
24+
def get_user(request: Request) -> None:
1725
"""
1826
responses:
1927
200:
@@ -24,7 +32,7 @@ def get_user(request):
2432
pass # pragma: no cover
2533

2634

27-
def list_users(request):
35+
def list_users(request: Request) -> None:
2836
"""
2937
responses:
3038
200:
@@ -35,7 +43,7 @@ def list_users(request):
3543
pass # pragma: no cover
3644

3745

38-
def create_user(request):
46+
def create_user(request: Request) -> None:
3947
"""
4048
responses:
4149
200:
@@ -47,7 +55,7 @@ def create_user(request):
4755

4856

4957
class OrganisationsEndpoint(HTTPEndpoint):
50-
def get(self, request):
58+
def get(self, request: Request) -> None:
5159
"""
5260
responses:
5361
200:
@@ -57,7 +65,7 @@ def get(self, request):
5765
"""
5866
pass # pragma: no cover
5967

60-
def post(self, request):
68+
def post(self, request: Request) -> None:
6169
"""
6270
responses:
6371
200:
@@ -68,7 +76,7 @@ def post(self, request):
6876
pass # pragma: no cover
6977

7078

71-
def regular_docstring_and_schema(request):
79+
def regular_docstring_and_schema(request: Request) -> None:
7280
"""
7381
This a regular docstring example (not included in schema)
7482
@@ -81,18 +89,18 @@ def regular_docstring_and_schema(request):
8189
pass # pragma: no cover
8290

8391

84-
def regular_docstring(request):
92+
def regular_docstring(request: Request) -> None:
8593
"""
8694
This a regular docstring example (not included in schema)
8795
"""
8896
pass # pragma: no cover
8997

9098

91-
def no_docstring(request):
99+
def no_docstring(request: Request) -> None:
92100
pass # pragma: no cover
93101

94102

95-
def subapp_endpoint(request):
103+
def subapp_endpoint(request: Request) -> None:
96104
"""
97105
responses:
98106
200:
@@ -101,7 +109,7 @@ def subapp_endpoint(request):
101109
pass # pragma: no cover
102110

103111

104-
def schema(request):
112+
def schema(request: Request) -> Response:
105113
return schemas.OpenAPIResponse(request=request)
106114

107115

@@ -128,7 +136,7 @@ def schema(request):
128136
)
129137

130138

131-
def test_schema_generation():
139+
def test_schema_generation() -> None:
132140
schema = schemas.get_schema(routes=app.routes)
133141
assert schema == {
134142
"openapi": "3.0.0",
@@ -261,7 +269,7 @@ def test_schema_generation():
261269
"""
262270

263271

264-
def test_schema_endpoint(test_client_factory):
272+
def test_schema_endpoint(test_client_factory: TestClientFactory) -> None:
265273
client = test_client_factory(app)
266274
response = client.get("/schema")
267275
assert response.headers["Content-Type"] == "application/vnd.oai.openapi"

0 commit comments

Comments
 (0)