Skip to content

Commit 9b26468

Browse files
committed
docs: Document potential exceptions on generated API functions
1 parent c3c8f5e commit 9b26468

Some content is hidden

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

42 files changed

+490
-83
lines changed

end_to_end_tests/golden-record/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ client = AuthenticatedClient(
6161
)
6262
```
6363

64+
There are more settings on the generated `Client` class which let you control more runtime behavior, check out the
65+
docstring on that class for more info.
66+
6467
Things to know:
6568
1. Every path/method combo becomes a Python module with four functions:
6669
1. `sync`: Blocking request that returns parsed data (if successful) or `None`

end_to_end_tests/golden-record/my_test_api_client/api/default/get_common_parameters.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import UNSET, Response, Unset
99

1010

@@ -38,7 +38,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
3838
response_200 = None
3939
return response_200
4040
if client.raise_on_unexpected_status:
41-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
41+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
4242
else:
4343
return None
4444

@@ -61,6 +61,10 @@ def sync_detailed(
6161
Args:
6262
common (Union[Unset, None, str]):
6363
64+
Raises:
65+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
66+
httpx.TimeoutException: If the request takes longer than Client.timeout.
67+
6468
Returns:
6569
Response[Any]
6670
"""
@@ -87,6 +91,10 @@ async def asyncio_detailed(
8791
Args:
8892
common (Union[Unset, None, str]):
8993
94+
Raises:
95+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
96+
httpx.TimeoutException: If the request takes longer than Client.timeout.
97+
9098
Returns:
9199
Response[Any]
92100
"""

end_to_end_tests/golden-record/my_test_api_client/api/default/post_common_parameters.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import UNSET, Response, Unset
99

1010

@@ -38,7 +38,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
3838
response_200 = None
3939
return response_200
4040
if client.raise_on_unexpected_status:
41-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
41+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
4242
else:
4343
return None
4444

@@ -61,6 +61,10 @@ def sync_detailed(
6161
Args:
6262
common (Union[Unset, None, str]):
6363
64+
Raises:
65+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
66+
httpx.TimeoutException: If the request takes longer than Client.timeout.
67+
6468
Returns:
6569
Response[Any]
6670
"""
@@ -87,6 +91,10 @@ async def asyncio_detailed(
8791
Args:
8892
common (Union[Unset, None, str]):
8993
94+
Raises:
95+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
96+
httpx.TimeoutException: If the request takes longer than Client.timeout.
97+
9098
Returns:
9199
Response[Any]
92100
"""

end_to_end_tests/golden-record/my_test_api_client/api/location/get_location_header_types.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...models.get_location_header_types_int_enum_header import GetLocationHeaderTypesIntEnumHeader
99
from ...models.get_location_header_types_string_enum_header import GetLocationHeaderTypesStringEnumHeader
1010
from ...types import UNSET, Response, Unset
@@ -57,7 +57,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
5757
response_200 = None
5858
return response_200
5959
if client.raise_on_unexpected_status:
60-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
60+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
6161
else:
6262
return None
6363

@@ -90,6 +90,10 @@ def sync_detailed(
9090
int_enum_header (Union[Unset, GetLocationHeaderTypesIntEnumHeader]):
9191
string_enum_header (Union[Unset, GetLocationHeaderTypesStringEnumHeader]):
9292
93+
Raises:
94+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
95+
httpx.TimeoutException: If the request takes longer than Client.timeout.
96+
9397
Returns:
9498
Response[Any]
9599
"""
@@ -131,6 +135,10 @@ async def asyncio_detailed(
131135
int_enum_header (Union[Unset, GetLocationHeaderTypesIntEnumHeader]):
132136
string_enum_header (Union[Unset, GetLocationHeaderTypesStringEnumHeader]):
133137
138+
Raises:
139+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
140+
httpx.TimeoutException: If the request takes longer than Client.timeout.
141+
134142
Returns:
135143
Response[Any]
136144
"""

end_to_end_tests/golden-record/my_test_api_client/api/location/get_location_query_optionality.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44

55
import httpx
66

7+
from ... import errors
78
from ...client import Client
8-
from ...errors import UnexpectedStatusException
99
from ...types import UNSET, Response, Unset
1010

1111

@@ -62,7 +62,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
6262
response_200 = None
6363
return response_200
6464
if client.raise_on_unexpected_status:
65-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
65+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
6666
else:
6767
return None
6868

@@ -91,6 +91,10 @@ def sync_detailed(
9191
null_not_required (Union[Unset, None, datetime.datetime]):
9292
not_null_not_required (Union[Unset, None, datetime.datetime]):
9393
94+
Raises:
95+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
96+
httpx.TimeoutException: If the request takes longer than Client.timeout.
97+
9498
Returns:
9599
Response[Any]
96100
"""
@@ -126,6 +130,10 @@ async def asyncio_detailed(
126130
null_not_required (Union[Unset, None, datetime.datetime]):
127131
not_null_not_required (Union[Unset, None, datetime.datetime]):
128132
133+
Raises:
134+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
135+
httpx.TimeoutException: If the request takes longer than Client.timeout.
136+
129137
Returns:
130138
Response[Any]
131139
"""

end_to_end_tests/golden-record/my_test_api_client/api/parameter_references/get_parameter_references_path_param.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import UNSET, Response
99

1010

@@ -48,7 +48,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
4848
response_200 = None
4949
return response_200
5050
if client.raise_on_unexpected_status:
51-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
51+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
5252
else:
5353
return None
5454

@@ -80,6 +80,10 @@ def sync_detailed(
8080
header_param (str):
8181
cookie_param (str):
8282
83+
Raises:
84+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
85+
httpx.TimeoutException: If the request takes longer than Client.timeout.
86+
8387
Returns:
8488
Response[Any]
8589
"""
@@ -119,6 +123,10 @@ async def asyncio_detailed(
119123
header_param (str):
120124
cookie_param (str):
121125
126+
Raises:
127+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
128+
httpx.TimeoutException: If the request takes longer than Client.timeout.
129+
122130
Returns:
123131
Response[Any]
124132
"""

end_to_end_tests/golden-record/my_test_api_client/api/parameters/delete_common_parameters_overriding_param.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import UNSET, Response, Unset
99

1010

@@ -39,7 +39,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
3939
response_200 = None
4040
return response_200
4141
if client.raise_on_unexpected_status:
42-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
42+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
4343
else:
4444
return None
4545

@@ -64,6 +64,10 @@ def sync_detailed(
6464
param_path (str):
6565
param_query (Union[Unset, None, str]):
6666
67+
Raises:
68+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
69+
httpx.TimeoutException: If the request takes longer than Client.timeout.
70+
6771
Returns:
6872
Response[Any]
6973
"""
@@ -93,6 +97,10 @@ async def asyncio_detailed(
9397
param_path (str):
9498
param_query (Union[Unset, None, str]):
9599
100+
Raises:
101+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
102+
httpx.TimeoutException: If the request takes longer than Client.timeout.
103+
96104
Returns:
97105
Response[Any]
98106
"""

end_to_end_tests/golden-record/my_test_api_client/api/parameters/get_common_parameters_overriding_param.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import UNSET, Response
99

1010

@@ -39,7 +39,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
3939
response_200 = None
4040
return response_200
4141
if client.raise_on_unexpected_status:
42-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
42+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
4343
else:
4444
return None
4545

@@ -66,6 +66,10 @@ def sync_detailed(
6666
param_query (str): A parameter with the same name as another. Default:
6767
'overridden_in_GET'. Example: an example string.
6868
69+
Raises:
70+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
71+
httpx.TimeoutException: If the request takes longer than Client.timeout.
72+
6973
Returns:
7074
Response[Any]
7175
"""
@@ -97,6 +101,10 @@ async def asyncio_detailed(
97101
param_query (str): A parameter with the same name as another. Default:
98102
'overridden_in_GET'. Example: an example string.
99103
104+
Raises:
105+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
106+
httpx.TimeoutException: If the request takes longer than Client.timeout.
107+
100108
Returns:
101109
Response[Any]
102110
"""

end_to_end_tests/golden-record/my_test_api_client/api/parameters/get_same_name_multiple_locations_param.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import UNSET, Response, Unset
99

1010

@@ -47,7 +47,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
4747
response_200 = None
4848
return response_200
4949
if client.raise_on_unexpected_status:
50-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
50+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
5151
else:
5252
return None
5353

@@ -76,6 +76,10 @@ def sync_detailed(
7676
param_header (Union[Unset, str]):
7777
param_cookie (Union[Unset, str]):
7878
79+
Raises:
80+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
81+
httpx.TimeoutException: If the request takes longer than Client.timeout.
82+
7983
Returns:
8084
Response[Any]
8185
"""
@@ -111,6 +115,10 @@ async def asyncio_detailed(
111115
param_header (Union[Unset, str]):
112116
param_cookie (Union[Unset, str]):
113117
118+
Raises:
119+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
120+
httpx.TimeoutException: If the request takes longer than Client.timeout.
121+
114122
Returns:
115123
Response[Any]
116124
"""

end_to_end_tests/golden-record/my_test_api_client/api/parameters/multiple_path_parameters.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
import httpx
55

6+
from ... import errors
67
from ...client import Client
7-
from ...errors import UnexpectedStatusException
88
from ...types import Response
99

1010

@@ -37,7 +37,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Any
3737
response_200 = None
3838
return response_200
3939
if client.raise_on_unexpected_status:
40-
raise UnexpectedStatusException(f"Unexpected status code: {response.status_code}")
40+
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
4141
else:
4242
return None
4343

@@ -66,6 +66,10 @@ def sync_detailed(
6666
param1 (str):
6767
param3 (int):
6868
69+
Raises:
70+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
71+
httpx.TimeoutException: If the request takes longer than Client.timeout.
72+
6973
Returns:
7074
Response[Any]
7175
"""
@@ -101,6 +105,10 @@ async def asyncio_detailed(
101105
param1 (str):
102106
param3 (int):
103107
108+
Raises:
109+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
110+
httpx.TimeoutException: If the request takes longer than Client.timeout.
111+
104112
Returns:
105113
Response[Any]
106114
"""

0 commit comments

Comments
 (0)