This project uses Semantic Versioning and follows these changelog guidelines.
- ensure six is a newer version
-
update the patch for responses' cookie parsing library.
- supports latest responses
-
properly keep strings as six.text_types in the cassete
- should fix using
requests.post(url, json=dict(...))
- should fix using
- custom wrappers now work properly in playback mode
-
allow more customizations for naming cassettes (based on callables), although for now the old convention of naming cassettes is still being the default one.
-
allow for custome wrappers around HTTP transactions mocked by vts
- reseting the vts recorder now waits for any background jobs started by the tested code
- to be filled in
- proper comparison for warnings when comparing request body vs recorded tracks.
- proper comparison for request bodies when matching against recorded tracks.
- unittests vs python 2.7 and 3.6
- don't record set-cookie in case cookies library fails to parse it. This is to mitigate responses usage of cookies.
- support for chunked http transactions
- allow requests to be recorded in multi-(g)threaded environments.
- no change, expect pypi's fixed description for CHANGELOG link
-
add support for python3
-
playback mode: improved comparison of HTTP requests agains the recorded ones. By default a warning is being logged or if "strict_body" is enabled the body is being asserted
-
recording mode: beside switching to this mode when a cassette file is missing, now it's possile to force this mode by using
PYTEST_VTS_FORCE_RECORDING
environment variable
- remove almost all usages of external sites for unittests
- disable the matching of requests' bodies to the recorded requests bodies.
- minor changes to description page on PyPI
- recording mode: when a cassette file is missing all http calls are requested using requests library and the HTTP request-response pair is saved to the cassette file
- playback mode: when a cassette file is present, its information is being rewind-ed into responses callback mocks.
- an unrecognized HTTP request during playback will obey the default behaviour of responses
- cassettes names and locations are determined by default using test module location and name.
vts
pytest fixture is now parametrizable, usingindirect=[]