Skip to content
Snippets Groups Projects
Verified Commit f884d1de authored by Antoine R. Dumont's avatar Antoine R. Dumont
Browse files

pytest_plugin: Allow support for query parameters in get_response_cb

parent 328f2718
No related branches found
No related tags found
1 merge request!307pytest_plugin: Allow support for query parameters in get_response_cb
......@@ -45,11 +45,11 @@ def get_response_cb(request, context, datadir,
then a call requests.get like:
requests.get('https://nowhere.com/path/to/resource')
requests.get('https://nowhere.com/path/to/resource?a=b&c=d')
will look the content of the response in:
datadir/nowhere.com/path_to_resource
datadir/nowhere.com/path_to_resource,a=b,c=d
Args:
request (requests.Request): Object requests
......@@ -77,6 +77,9 @@ def get_response_cb(request, context, datadir,
if filename.endswith('/'):
filename = filename[:-1]
filename = filename.replace('/', '_')
if url.query:
filename += ',' + url.query.replace('&', ',')
filepath = path.join(datadir, dirname, filename)
if visits is not None:
visit = visits.get(url, 0)
......
{
"hello": "jane doe"
}
......@@ -56,6 +56,17 @@ def test_get_response_cb_no_visit(requests_mock_datadir):
assert response.json() == {'hello': 'you'}
def test_get_response_cb_query_params(requests_mock_datadir):
response = requests.get('https://example.com/file.json?toto=42')
assert not response.ok
assert response.status_code == 404
response = requests.get(
'https://example.com/file.json?name=doe&firstname=jane')
assert response.ok
assert response.json() == {'hello': 'jane doe'}
requests_mock_datadir_ignore = requests_mock_datadir_factory(
ignore_urls=['https://example.com/file.json'],
has_multi_visit=False,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment