1313use Tempest \Http \Request ;
1414use Tempest \Router \RouteConfig ;
1515use Tempest \Router \Router ;
16- use Tempest \Validation \ Validator ;
16+ use Tempest \Support \ Uri ;
1717
1818use function Tempest \map ;
1919
@@ -25,108 +25,108 @@ public function __construct(
2525 private Container $ container ,
2626 ) {}
2727
28- public function get (string $ uri , array $ headers = []): TestResponseHelper
28+ public function get (string $ uri , array $ query = [], array $ headers = []): TestResponseHelper
2929 {
3030 return $ this ->sendRequest (
3131 new GenericRequest (
3232 method: Method::GET ,
33- uri: $ uri ,
33+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
3434 body: [],
3535 headers: $ headers ,
3636 ),
3737 );
3838 }
3939
40- public function head (string $ uri , array $ headers = []): TestResponseHelper
40+ public function head (string $ uri , array $ query = [], array $ headers = []): TestResponseHelper
4141 {
4242 return $ this ->sendRequest (
4343 new GenericRequest (
4444 method: Method::HEAD ,
45- uri: $ uri ,
45+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
4646 body: [],
4747 headers: $ headers ,
4848 ),
4949 );
5050 }
5151
52- public function post (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
52+ public function post (string $ uri , array $ body = [], array $ query = [], array $ headers = []): TestResponseHelper
5353 {
5454 return $ this ->sendRequest (
5555 new GenericRequest (
5656 method: Method::POST ,
57- uri: $ uri ,
57+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
5858 body: $ body ,
5959 headers: $ headers ,
6060 ),
6161 );
6262 }
6363
64- public function put (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
64+ public function put (string $ uri , array $ body = [], array $ query = [], array $ headers = []): TestResponseHelper
6565 {
6666 return $ this ->sendRequest (
6767 new GenericRequest (
6868 method: Method::PUT ,
69- uri: $ uri ,
69+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
7070 body: $ body ,
7171 headers: $ headers ,
7272 ),
7373 );
7474 }
7575
76- public function delete (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
76+ public function delete (string $ uri , array $ body = [], array $ query = [], array $ headers = []): TestResponseHelper
7777 {
7878 return $ this ->sendRequest (
7979 new GenericRequest (
8080 method: Method::DELETE ,
81- uri: $ uri ,
81+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
8282 body: $ body ,
8383 headers: $ headers ,
8484 ),
8585 );
8686 }
8787
88- public function connect (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
88+ public function connect (string $ uri , array $ query = [], array $ headers = []): TestResponseHelper
8989 {
9090 return $ this ->sendRequest (
9191 new GenericRequest (
9292 method: Method::CONNECT ,
93- uri: $ uri ,
94- body: $ body ,
93+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
94+ body: [] ,
9595 headers: $ headers ,
9696 ),
9797 );
9898 }
9999
100- public function options (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
100+ public function options (string $ uri , array $ query = [], array $ headers = []): TestResponseHelper
101101 {
102102 return $ this ->sendRequest (
103103 new GenericRequest (
104104 method: Method::OPTIONS ,
105- uri: $ uri ,
106- body: $ body ,
105+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
106+ body: [] ,
107107 headers: $ headers ,
108108 ),
109109 );
110110 }
111111
112- public function trace (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
112+ public function trace (string $ uri , array $ query = [], array $ headers = []): TestResponseHelper
113113 {
114114 return $ this ->sendRequest (
115115 new GenericRequest (
116116 method: Method::TRACE ,
117- uri: $ uri ,
118- body: $ body ,
117+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
118+ body: [] ,
119119 headers: $ headers ,
120120 ),
121121 );
122122 }
123123
124- public function patch (string $ uri , array $ body = [], array $ headers = []): TestResponseHelper
124+ public function patch (string $ uri , array $ body = [], array $ query = [], array $ headers = []): TestResponseHelper
125125 {
126126 return $ this ->sendRequest (
127127 new GenericRequest (
128128 method: Method::PATCH ,
129- uri: $ uri ,
129+ uri: Uri \merge_query ( $ uri, ... $ query ) ,
130130 body: $ body ,
131131 headers: $ headers ,
132132 ),
@@ -142,6 +142,7 @@ public function sendRequest(Request $request): TestResponseHelper
142142
143143 return new TestResponseHelper (
144144 response: $ router ->dispatch (map ($ request )->with (RequestToPsrRequestMapper::class)->do ()),
145+ request: $ request ,
145146 container: $ this ->container ,
146147 );
147148 }
0 commit comments