@@ -428,6 +428,30 @@ def test_default_query_option(self) -> None:
428428
429429 client .close ()
430430
431+ def test_hardcoded_query_params_in_url (self , client : Writer ) -> None :
432+ request = client ._build_request (FinalRequestOptions (method = "get" , url = "/foo?beta=true" ))
433+ url = httpx .URL (request .url )
434+ assert dict (url .params ) == {"beta" : "true" }
435+
436+ request = client ._build_request (
437+ FinalRequestOptions (
438+ method = "get" ,
439+ url = "/foo?beta=true" ,
440+ params = {"limit" : "10" , "page" : "abc" },
441+ )
442+ )
443+ url = httpx .URL (request .url )
444+ assert dict (url .params ) == {"beta" : "true" , "limit" : "10" , "page" : "abc" }
445+
446+ request = client ._build_request (
447+ FinalRequestOptions (
448+ method = "get" ,
449+ url = "/files/a%2Fb?beta=true" ,
450+ params = {"limit" : "10" },
451+ )
452+ )
453+ assert request .url .raw_path == b"/files/a%2Fb?beta=true&limit=10"
454+
431455 def test_request_extra_json (self , client : Writer ) -> None :
432456 request = client ._build_request (
433457 FinalRequestOptions (
@@ -1334,6 +1358,30 @@ async def test_default_query_option(self) -> None:
13341358
13351359 await client .close ()
13361360
1361+ async def test_hardcoded_query_params_in_url (self , async_client : AsyncWriter ) -> None :
1362+ request = async_client ._build_request (FinalRequestOptions (method = "get" , url = "/foo?beta=true" ))
1363+ url = httpx .URL (request .url )
1364+ assert dict (url .params ) == {"beta" : "true" }
1365+
1366+ request = async_client ._build_request (
1367+ FinalRequestOptions (
1368+ method = "get" ,
1369+ url = "/foo?beta=true" ,
1370+ params = {"limit" : "10" , "page" : "abc" },
1371+ )
1372+ )
1373+ url = httpx .URL (request .url )
1374+ assert dict (url .params ) == {"beta" : "true" , "limit" : "10" , "page" : "abc" }
1375+
1376+ request = async_client ._build_request (
1377+ FinalRequestOptions (
1378+ method = "get" ,
1379+ url = "/files/a%2Fb?beta=true" ,
1380+ params = {"limit" : "10" },
1381+ )
1382+ )
1383+ assert request .url .raw_path == b"/files/a%2Fb?beta=true&limit=10"
1384+
13371385 def test_request_extra_json (self , client : Writer ) -> None :
13381386 request = client ._build_request (
13391387 FinalRequestOptions (
0 commit comments