(self)
| 376 | |
| 377 | class TestAPIRequest: |
| 378 | def test_properties(self) -> None: |
| 379 | options = FinalRequestOptions.construct( |
| 380 | method="post", |
| 381 | url="/v1/messages", |
| 382 | json_data={"model": "claude-opus-4-6", "max_tokens": 16}, |
| 383 | headers={"x-foo": "bar"}, |
| 384 | params={"beta": "true"}, |
| 385 | max_retries=3, |
| 386 | timeout=10.0, |
| 387 | ) |
| 388 | request = APIRequest(options=options, cast_to=Message, stream=False, stream_cls=None) |
| 389 | |
| 390 | assert request.method == "post" |
| 391 | assert request.url == "/v1/messages" |
| 392 | assert request.json == {"model": "claude-opus-4-6", "max_tokens": 16} |
| 393 | assert request.headers == {"x-foo": "bar"} |
| 394 | assert request.query_params == {"beta": "true"} |
| 395 | assert request.timeout == 10.0 |
| 396 | assert request.max_retries == 3 |
| 397 | assert request.cast_to is Message |
| 398 | assert request.stream is False |
| 399 | assert request.stream_cls is None |
| 400 | assert request.options is options |
| 401 | |
| 402 | def test_headers_default_to_empty_mapping(self) -> None: |
| 403 | options = FinalRequestOptions(method="get", url="/v1/models") |
nothing calls this directly
no test coverage detected