2024-11-28 20:52:45 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.35.0
0.35.0
Requires httpx==0.28.\*
|
2024-11-24 10:27:49 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.34.0
0.34.0
Added
- `is_optional` parameter is now available on responses and callbacks \
registration. Allowing to add optional responses while keeping other responses \
as mandatory. Refer to documentation for more details.
- `is_reusable` parameter is now available on responses and callbacks \
registration. Allowing to add multi-match responses while keeping other \
responses as single-match. Refer to documentation for more details.
Fixed
- `httpx_mock.get_request` will now also propose to refine filters if more than \
one request is found instead of only proposing to switch to \
`httpx_mock.get_requests`.
|
2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862) |
Log message:
py-*: remove unused tool dependency
py-setuptools includes the py-wheel functionality nowadays
|
2024-11-03 13:16:21 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.33.0
0.33.0
Added
- Explicit support for python `3.13`.
- `should_mock` option (callable returning a boolean) is now available, \
defaulting to always returning `True`. Refer to documentation for more details.
- Matching on the full multipart body can now be performed using `match_files` \
and `match_data` parameters. Refer to documentation for more details.
- Matching on extensions (including timeout) can now be performed using \
`match_extensions` parameter. Refer to documentation for more details.
Removed
- `non_mocked_hosts` option is not available anymore. Use `should_mock` instead \
as in the following sample:
```python
import pytest
@pytest.mark.httpx_mock(non_mocked_hosts=["my_local_test_host"])
def test_previous_behavior(httpx_mock):
...
@pytest.mark.httpx_mock(should_mock=lambda request: request.url.host not in \
["my_local_test_host"])
def test_new_behavior(httpx_mock):
...
```
Please note that your hosts might need to be prefixed with `www.` depending on \
your usage.
|
2024-10-13 11:33:04 by Thomas Klausner | Files touched by this commit (1) |
Log message:
py-test-httpx: fix PLIST
|
2024-10-09 22:14:17 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.32.0
0.32.0
Added
- The following option is now available:
- `can_send_already_matched_responses` (boolean), defaulting to `False`.
- Assertion failure message in case of unmatched responses is now linking \
documentation on how to deactivate the check.
- Assertion failure message in case of unmatched requests is now linking \
documentation on how to deactivate the check.
- `httpx.TimeoutException` message issued in case of unmatched request is now \
linking documentation on how to reuse responses (in case some responses are \
already matched).
Fixed
- Documentation now clearly state the risks associated with changing the default \
options.
- Assertion failure message in case of unmatched requests at teardown is now \
describing requests in a more user-friendly way.
- Assertion failure message in case of unmatched requests at teardown is now \
prefixing requests with `- ` to highlight the fact that this is a list, \
preventing misapprehension in case only one element exists.
- Assertion failure message in case of unmatched responses at teardown is now \
prefixing responses with `- ` to highlight the fact that this is a list, \
preventing misapprehension in case only one element exists.
- `httpx.TimeoutException` message issued in case of unmatched request is now \
prefixing available responses with `- ` to highlight the fact that this is a \
list, preventing misapprehension in case only one element exists.
- `httpx.TimeoutException` message issued in case of unmatched request is now \
listing unmatched responses (in registration order) before already matched one \
(still in registration order).
- The incentive behind this change is to help identify a potential mismatch \
faster as the first unmatched response is the most likely to be the one expected \
to match.
- Response description in failure messages (`httpx.TimeoutException` message \
issued in case of unmatched request or assertion failure message in case of \
unmatched responses at teardown) is now displaying if the response was already \
matched or not and less misleading in it's phrasing about what it can match (a \
single request by default).
Changed
- Last registered matching response will not be reused by default anymore in \
case all matching responses have already been sent.
- This behavior can be changed thanks to the new \
`pytest.mark.httpx_mock(can_send_already_matched_responses=True)` option.
- The incentive behind this change is to spot regression if a request was \
issued more than the expected number of times.
- `HTTPXMock` class was only exposed for type hinting purpose. This is now \
explained in the class docstring.
- As a result this is the last time a change to `__init__` signature will be \
documented and considered a breaking change.
- Future changes will not be documented and will be considered as internal \
refactoring not worth a version bump.
- `__init__` now expects one parameter, the newly introduced (since [0.31.0]) \
options.
- `HTTPXMockOptions` class was never intended to be exposed and is now marked as \
private.
|
2024-09-23 10:12:12 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.31.1
0.31.1
Fixed
- It is now possible to match on content provided as async iterable by the client.
0.31.0
Changed
- Tests will now fail at teardown by default if some requests were issued but \
were not matched.
- This behavior can be changed thanks to the new \
``pytest.mark.httpx_mock(assert_all_requests_were_expected=False)`` option.
- The `httpx_mock` fixture is now configured using a marker (many thanks to \
[`Frazer McLean`](https://github.com/RazerM)).
```python
# Apply marker to whole module
pytestmark = pytest.mark.httpx_mock(assert_all_responses_were_requested=False)
# Or to specific tests
@pytest.mark.httpx_mock(non_mocked_hosts=[...])
def test_foo(httpx_mock):
...
```
- The following options are available:
- `assert_all_responses_were_requested` (boolean), defaulting to `True`.
- `assert_all_requests_were_expected` (boolean), defaulting to `True`.
- `non_mocked_hosts` (iterable), defaulting to an empty list, meaning all \
hosts are mocked.
- `httpx_mock.reset` do not expect any parameter anymore and will only reset the \
mock state (no assertions will be performed).
Removed
- `pytest` `7` is not supported anymore (`pytest` `8` has been out for 9 months \
already).
- `assert_all_responses_were_requested` fixture is not available anymore, use \
`pytest.mark.httpx_mock(assert_all_responses_were_requested=False)` instead.
- `non_mocked_hosts` fixture is not available anymore, use \
`pytest.mark.httpx_mock(non_mocked_hosts=[])` instead.
|
2024-02-21 20:21:53 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.30.0
0.30.0
Changed
- Requires [`httpx`](https://www.python-httpx.org)==0.27.\*
Fixed
- Switch from `setup.py` to `pyproject.toml`
|
2024-01-30 21:47:36 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-httpx: updated to 0.29.0
0.29.0
- Add support for [`pytest`](https://docs.pytest.org)==8.\* \
([`pytest`](https://docs.pytest.org)==7.\* is still supported for now).
|
2024-01-01 12:47:35 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-test-httpx: updated to 0.28.0
0.28.0
Changed
- Requires [`httpx`](https://www.python-httpx.org)==0.26.\*
|