@@ -427,6 +427,30 @@ def test_default_query_option(self) -> None:
427427
428428 client .close ()
429429
430+ def test_hardcoded_query_params_in_url (self , client : Kernel ) -> None :
431+ request = client ._build_request (FinalRequestOptions (method = "get" , url = "/foo?beta=true" ))
432+ url = httpx .URL (request .url )
433+ assert dict (url .params ) == {"beta" : "true" }
434+
435+ request = client ._build_request (
436+ FinalRequestOptions (
437+ method = "get" ,
438+ url = "/foo?beta=true" ,
439+ params = {"limit" : "10" , "page" : "abc" },
440+ )
441+ )
442+ url = httpx .URL (request .url )
443+ assert dict (url .params ) == {"beta" : "true" , "limit" : "10" , "page" : "abc" }
444+
445+ request = client ._build_request (
446+ FinalRequestOptions (
447+ method = "get" ,
448+ url = "/files/a%2Fb?beta=true" ,
449+ params = {"limit" : "10" },
450+ )
451+ )
452+ assert request .url .raw_path == b"/files/a%2Fb?beta=true&limit=10"
453+
430454 def test_request_extra_json (self , client : Kernel ) -> None :
431455 request = client ._build_request (
432456 FinalRequestOptions (
@@ -1330,6 +1354,30 @@ async def test_default_query_option(self) -> None:
13301354
13311355 await client .close ()
13321356
1357+ async def test_hardcoded_query_params_in_url (self , async_client : AsyncKernel ) -> None :
1358+ request = async_client ._build_request (FinalRequestOptions (method = "get" , url = "/foo?beta=true" ))
1359+ url = httpx .URL (request .url )
1360+ assert dict (url .params ) == {"beta" : "true" }
1361+
1362+ request = async_client ._build_request (
1363+ FinalRequestOptions (
1364+ method = "get" ,
1365+ url = "/foo?beta=true" ,
1366+ params = {"limit" : "10" , "page" : "abc" },
1367+ )
1368+ )
1369+ url = httpx .URL (request .url )
1370+ assert dict (url .params ) == {"beta" : "true" , "limit" : "10" , "page" : "abc" }
1371+
1372+ request = async_client ._build_request (
1373+ FinalRequestOptions (
1374+ method = "get" ,
1375+ url = "/files/a%2Fb?beta=true" ,
1376+ params = {"limit" : "10" },
1377+ )
1378+ )
1379+ assert request .url .raw_path == b"/files/a%2Fb?beta=true&limit=10"
1380+
13331381 def test_request_extra_json (self , client : Kernel ) -> None :
13341382 request = client ._build_request (
13351383 FinalRequestOptions (
0 commit comments