@@ -279,6 +279,19 @@ public function testClick()
279
279
$ this ->assertSame ('http://www.example.com/foo ' , $ client ->getRequest ()->getUri (), '->click() clicks on links ' );
280
280
}
281
281
282
+ public function testClickPreserveHeaders ()
283
+ {
284
+ $ client = $ this ->getBrowser ();
285
+ $ client ->setNextResponse (new Response ('<html><a href="/foo">foo</a></html> ' ));
286
+ $ crawler = $ client ->request ('GET ' , 'http://www.example.com/foo/foobar ' );
287
+
288
+ $ client ->click ($ crawler ->filter ('a ' )->link (), ['X-Special-Header ' => 'Special Header Value ' ]);
289
+
290
+ $ server = $ client ->getRequest ()->getServer ();
291
+ $ this ->assertArrayHasKey ('X-Special-Header ' , $ server );
292
+ $ this ->assertSame ('Special Header Value ' , $ server ['X-Special-Header ' ]);
293
+ }
294
+
282
295
public function testClickLink ()
283
296
{
284
297
$ client = $ this ->getBrowser ();
@@ -299,6 +312,18 @@ public function testClickLinkNotFound()
299
312
$ client ->clickLink ('foo ' );
300
313
}
301
314
315
+ public function testClickLinkPreserveHeaders ()
316
+ {
317
+ $ client = $ this ->getBrowser ();
318
+ $ client ->setNextResponse (new Response ('<html><a href="/foo">foo</a></html> ' ));
319
+ $ client ->request ('GET ' , 'http://www.example.com/foo/foobar ' );
320
+ $ client ->clickLink ('foo ' , ['X-Special-Header ' => 'Special Header Value ' ]);
321
+
322
+ $ server = $ client ->getRequest ()->getServer ();
323
+ $ this ->assertArrayHasKey ('X-Special-Header ' , $ server );
324
+ $ this ->assertSame ('Special Header Value ' , $ server ['X-Special-Header ' ]);
325
+ }
326
+
302
327
public function testClickForm ()
303
328
{
304
329
$ client = $ this ->getBrowser ();
@@ -310,6 +335,19 @@ public function testClickForm()
310
335
$ this ->assertSame ('http://www.example.com/foo ' , $ client ->getRequest ()->getUri (), '->click() Form submit forms ' );
311
336
}
312
337
338
+ public function testClickFormPreserveHeaders ()
339
+ {
340
+ $ client = $ this ->getBrowser ();
341
+ $ client ->setNextResponse (new Response ('<html><form action="/foo"><input type="submit" /></form></html> ' ));
342
+ $ crawler = $ client ->request ('GET ' , 'http://www.example.com/foo/foobar ' );
343
+
344
+ $ client ->click ($ crawler ->filter ('input ' )->form (), ['X-Special-Header ' => 'Special Header Value ' ]);
345
+
346
+ $ server = $ client ->getRequest ()->getServer ();
347
+ $ this ->assertArrayHasKey ('X-Special-Header ' , $ server );
348
+ $ this ->assertSame ('Special Header Value ' , $ server ['X-Special-Header ' ]);
349
+ }
350
+
313
351
public function testSubmit ()
314
352
{
315
353
$ client = $ this ->getBrowser ();
0 commit comments