Skip to content

Commit 60717ca

Browse files
committed
more robust qs parsing
1 parent 9795014 commit 60717ca

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

tests/integrations/httpx/test_httpx.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,11 @@
1313
except ImportError:
1414
import mock # python < 3.3
1515

16+
try:
17+
from urllib.parse import parse_qsl
18+
except ImportError:
19+
from urlparse import parse_qsl # type: ignore
20+
1621

1722
@pytest.mark.parametrize(
1823
"httpx_client",
@@ -321,18 +326,18 @@ def test_graphql_get_client_error_captured(
321326
}
322327
],
323328
}
329+
params = {"query": "query QueryName {user{name}}"}
330+
324331
httpx_mock.add_response(method="GET", json=graphql_response)
325332

326333
events = capture_events()
327334

328335
if asyncio.iscoroutinefunction(httpx_client.get):
329336
response = asyncio.get_event_loop().run_until_complete(
330-
httpx_client.get(url, params={"query": "query QueryName {user{name}}"})
337+
httpx_client.get(url, params=params)
331338
)
332339
else:
333-
response = httpx_client.get(
334-
url, params={"query": "query QueryName {user{name}}"}
335-
)
340+
response = httpx_client.get(url, params=params)
336341

337342
assert response.status_code == 200
338343
assert response.json() == graphql_response
@@ -341,10 +346,7 @@ def test_graphql_get_client_error_captured(
341346

342347
assert event["request"]["url"] == url
343348
assert event["request"]["method"] == "GET"
344-
assert (
345-
event["request"]["query_string"]
346-
== "query=query%20QueryName%20%7Buser%7Bname%7D%7D"
347-
)
349+
assert dict(parse_qsl(event["request"]["query_string"])) == params
348350
assert "data" not in event["request"]
349351
assert event["contexts"]["response"]["data"] == graphql_response
350352

0 commit comments

Comments
 (0)