|
24 | 24 | from zeroentropy._types import Omit
|
25 | 25 | from zeroentropy._models import BaseModel, FinalRequestOptions
|
26 | 26 | from zeroentropy._constants import RAW_RESPONSE_HEADER
|
27 |
| -from zeroentropy._exceptions import APIStatusError, APITimeoutError, APIResponseValidationError |
| 27 | +from zeroentropy._exceptions import APIStatusError, APITimeoutError, ZeroentropyError, APIResponseValidationError |
28 | 28 | from zeroentropy._base_client import (
|
29 | 29 | DEFAULT_TIMEOUT,
|
30 | 30 | HTTPX_DEFAULT_TIMEOUT,
|
@@ -339,6 +339,16 @@ def test_default_headers_option(self) -> None:
|
339 | 339 | assert request.headers.get("x-foo") == "stainless"
|
340 | 340 | assert request.headers.get("x-stainless-lang") == "my-overriding-header"
|
341 | 341 |
|
| 342 | + def test_validate_headers(self) -> None: |
| 343 | + client = Zeroentropy(base_url=base_url, bearer_token=bearer_token, _strict_response_validation=True) |
| 344 | + request = client._build_request(FinalRequestOptions(method="get", url="/foo")) |
| 345 | + assert request.headers.get("Authorization") == f"Bearer {bearer_token}" |
| 346 | + |
| 347 | + with pytest.raises(ZeroentropyError): |
| 348 | + with update_env(**{"ZEROENTROPY_API_KEY": Omit()}): |
| 349 | + client2 = Zeroentropy(base_url=base_url, bearer_token=None, _strict_response_validation=True) |
| 350 | + _ = client2 |
| 351 | + |
342 | 352 | def test_default_query_option(self) -> None:
|
343 | 353 | client = Zeroentropy(
|
344 | 354 | base_url=base_url,
|
@@ -1123,6 +1133,16 @@ def test_default_headers_option(self) -> None:
|
1123 | 1133 | assert request.headers.get("x-foo") == "stainless"
|
1124 | 1134 | assert request.headers.get("x-stainless-lang") == "my-overriding-header"
|
1125 | 1135 |
|
| 1136 | + def test_validate_headers(self) -> None: |
| 1137 | + client = AsyncZeroentropy(base_url=base_url, bearer_token=bearer_token, _strict_response_validation=True) |
| 1138 | + request = client._build_request(FinalRequestOptions(method="get", url="/foo")) |
| 1139 | + assert request.headers.get("Authorization") == f"Bearer {bearer_token}" |
| 1140 | + |
| 1141 | + with pytest.raises(ZeroentropyError): |
| 1142 | + with update_env(**{"ZEROENTROPY_API_KEY": Omit()}): |
| 1143 | + client2 = AsyncZeroentropy(base_url=base_url, bearer_token=None, _strict_response_validation=True) |
| 1144 | + _ = client2 |
| 1145 | + |
1126 | 1146 | def test_default_query_option(self) -> None:
|
1127 | 1147 | client = AsyncZeroentropy(
|
1128 | 1148 | base_url=base_url,
|
|
0 commit comments