Skip to content

Commit 47a236e

Browse files
committed
Update tests, add changeset
1 parent 136c960 commit 47a236e

File tree

5 files changed

+53
-44
lines changed

5 files changed

+53
-44
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
default: patch
3+
---
4+
5+
# Add aliases to `Client` for pyright
6+
7+
This should resolve incompatibilities between the generated `Client` class and the pyright type checker.
8+
9+
PR #1009 closes #909. Thanks @patrick91!

end_to_end_tests/golden-record/my_test_api_client/client.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ class Client:
3535
"""
3636

3737
raise_on_unexpected_status: bool = field(default=False, kw_only=True)
38-
_base_url: str
39-
_cookies: Dict[str, str] = field(factory=dict, kw_only=True)
40-
_headers: Dict[str, str] = field(factory=dict, kw_only=True)
41-
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True)
42-
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True)
43-
_follow_redirects: bool = field(default=False, kw_only=True)
44-
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True)
38+
_base_url: str = field(alias="base_url")
39+
_cookies: Dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
40+
_headers: Dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
41+
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True, alias="timeout")
42+
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
43+
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
44+
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
4545
_client: Optional[httpx.Client] = field(default=None, init=False)
4646
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
4747

@@ -165,13 +165,13 @@ class AuthenticatedClient:
165165
"""
166166

167167
raise_on_unexpected_status: bool = field(default=False, kw_only=True)
168-
_base_url: str
169-
_cookies: Dict[str, str] = field(factory=dict, kw_only=True)
170-
_headers: Dict[str, str] = field(factory=dict, kw_only=True)
171-
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True)
172-
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True)
173-
_follow_redirects: bool = field(default=False, kw_only=True)
174-
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True)
168+
_base_url: str = field(alias="base_url")
169+
_cookies: Dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
170+
_headers: Dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
171+
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True, alias="timeout")
172+
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
173+
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
174+
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
175175
_client: Optional[httpx.Client] = field(default=None, init=False)
176176
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
177177

end_to_end_tests/test-3-1-golden-record/test_3_1_features_client/client.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ class Client:
3535
"""
3636

3737
raise_on_unexpected_status: bool = field(default=False, kw_only=True)
38-
_base_url: str
39-
_cookies: Dict[str, str] = field(factory=dict, kw_only=True)
40-
_headers: Dict[str, str] = field(factory=dict, kw_only=True)
41-
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True)
42-
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True)
43-
_follow_redirects: bool = field(default=False, kw_only=True)
44-
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True)
38+
_base_url: str = field(alias="base_url")
39+
_cookies: Dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
40+
_headers: Dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
41+
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True, alias="timeout")
42+
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
43+
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
44+
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
4545
_client: Optional[httpx.Client] = field(default=None, init=False)
4646
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
4747

@@ -165,13 +165,13 @@ class AuthenticatedClient:
165165
"""
166166

167167
raise_on_unexpected_status: bool = field(default=False, kw_only=True)
168-
_base_url: str
169-
_cookies: Dict[str, str] = field(factory=dict, kw_only=True)
170-
_headers: Dict[str, str] = field(factory=dict, kw_only=True)
171-
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True)
172-
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True)
173-
_follow_redirects: bool = field(default=False, kw_only=True)
174-
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True)
168+
_base_url: str = field(alias="base_url")
169+
_cookies: Dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
170+
_headers: Dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
171+
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True, alias="timeout")
172+
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
173+
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
174+
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
175175
_client: Optional[httpx.Client] = field(default=None, init=False)
176176
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
177177

integration-tests/integration_tests/client.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ class Client:
3535
"""
3636

3737
raise_on_unexpected_status: bool = field(default=False, kw_only=True)
38-
_base_url: str
39-
_cookies: Dict[str, str] = field(factory=dict, kw_only=True)
40-
_headers: Dict[str, str] = field(factory=dict, kw_only=True)
41-
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True)
42-
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True)
43-
_follow_redirects: bool = field(default=False, kw_only=True)
44-
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True)
38+
_base_url: str = field(alias="base_url")
39+
_cookies: Dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
40+
_headers: Dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
41+
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True, alias="timeout")
42+
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
43+
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
44+
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
4545
_client: Optional[httpx.Client] = field(default=None, init=False)
4646
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
4747

@@ -165,13 +165,13 @@ class AuthenticatedClient:
165165
"""
166166

167167
raise_on_unexpected_status: bool = field(default=False, kw_only=True)
168-
_base_url: str
169-
_cookies: Dict[str, str] = field(factory=dict, kw_only=True)
170-
_headers: Dict[str, str] = field(factory=dict, kw_only=True)
171-
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True)
172-
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True)
173-
_follow_redirects: bool = field(default=False, kw_only=True)
174-
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True)
168+
_base_url: str = field(alias="base_url")
169+
_cookies: Dict[str, str] = field(factory=dict, kw_only=True, alias="cookies")
170+
_headers: Dict[str, str] = field(factory=dict, kw_only=True, alias="headers")
171+
_timeout: Optional[httpx.Timeout] = field(default=None, kw_only=True, alias="timeout")
172+
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
173+
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
174+
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
175175
_client: Optional[httpx.Client] = field(default=None, init=False)
176176
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
177177

openapi_python_client/templates/client.py.jinja

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ class Client:
4444
_verify_ssl: Union[str, bool, ssl.SSLContext] = field(default=True, kw_only=True, alias="verify_ssl")
4545
_follow_redirects: bool = field(default=False, kw_only=True, alias="follow_redirects")
4646
_httpx_args: Dict[str, Any] = field(factory=dict, kw_only=True, alias="httpx_args")
47-
_client: Optional[httpx.Client] = field(default=None, init=False, alias="client")
48-
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False, alias="async_client")
47+
_client: Optional[httpx.Client] = field(default=None, init=False)
48+
_async_client: Optional[httpx.AsyncClient] = field(default=None, init=False)
4949
{% endmacro %}{{ attributes() }}
5050
{% macro builders(self) %}
5151
def with_headers(self, headers: Dict[str, str]) -> "{{ self }}":

0 commit comments

Comments
 (0)