Skip to content

Commit 86e200c

Browse files
committed
fix params parsing
1 parent 2b34966 commit 86e200c

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

responses.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -622,7 +622,7 @@ def _find_match(self, request):
622622
def _on_request(self, adapter, request, **kwargs):
623623
match = self._find_match(request)
624624
resp_callback = self.response_callback
625-
request.params = dict(parse_qsl(request.path_url.replace("/?", "")))
625+
request.params = dict(parse_qsl(urlparse(request.path_url).query))
626626

627627
if match is None:
628628
if any(

test_responses.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1122,21 +1122,22 @@ def test_cookies_from_headers():
11221122
assert v == expected[k]
11231123

11241124

1125-
def test_request_param():
1125+
@pytest.mark.parametrize("url", ("http://example.com", "http://example.com/some/path",))
1126+
def test_request_param(url):
11261127
@responses.activate
11271128
def run():
11281129
params = {"hello": "world", "example": "params"}
11291130
responses.add(
11301131
method=responses.GET,
1131-
url="http://example.com?hello=world",
1132+
url="{0}?hello=world".format(url),
11321133
body="test",
11331134
match_querystring=False,
11341135
)
1135-
resp = requests.get("http://example.com", params=params)
1136+
resp = requests.get(url, params=params)
11361137
assert_response(resp, "test")
11371138
assert resp.request.params == params
11381139

1139-
resp = requests.get("http://example.com")
1140+
resp = requests.get(url)
11401141
assert_response(resp, "test")
11411142
assert resp.request.params == {}
11421143

0 commit comments

Comments
 (0)