@@ -82,6 +82,41 @@ function it_does_not_load_cookie_if_domain_does_not_match(RequestInterface $requ
8282 }, function () {});
8383 }
8484
85+ function it_does_not_load_cookie_on_hackish_domains (RequestInterface $ request , UriInterface $ uri , Promise $ promise )
86+ {
87+ $ cookie = new Cookie ('name ' , 'value ' , 86400 , 'test.com ' );
88+ $ this ->cookieJar ->addCookie ($ cookie );
89+
90+ $ request ->getUri ()->willReturn ($ uri );
91+ $ uri ->getHost ()->willReturn ('hacktest.com ' );
92+
93+ $ request ->withAddedHeader ('Cookie ' , 'name=value ' )->shouldNotBeCalled ();
94+
95+ $ this ->handleRequest ($ request , function (RequestInterface $ requestReceived ) use ($ request , $ promise ) {
96+ if (Argument::is ($ requestReceived )->scoreArgument ($ request ->getWrappedObject ())) {
97+ return $ promise ->getWrappedObject ();
98+ }
99+ }, function () {});
100+ }
101+
102+ function it_loads_cookie_on_subdomains (RequestInterface $ request , UriInterface $ uri , Promise $ promise )
103+ {
104+ $ cookie = new Cookie ('name ' , 'value ' , 86400 , 'test.com ' );
105+ $ this ->cookieJar ->addCookie ($ cookie );
106+
107+ $ request ->getUri ()->willReturn ($ uri );
108+ $ uri ->getHost ()->willReturn ('www.test.com ' );
109+ $ uri ->getPath ()->willReturn ('/ ' );
110+
111+ $ request ->withAddedHeader ('Cookie ' , 'name=value ' )->willReturn ($ request );
112+
113+ $ this ->handleRequest ($ request , function (RequestInterface $ requestReceived ) use ($ request , $ promise ) {
114+ if (Argument::is ($ requestReceived )->scoreArgument ($ request ->getWrappedObject ())) {
115+ return $ promise ->getWrappedObject ();
116+ }
117+ }, function () {});
118+ }
119+
85120 function it_does_not_load_cookie_if_path_does_not_match (RequestInterface $ request , UriInterface $ uri , Promise $ promise )
86121 {
87122 $ cookie = new Cookie ('name ' , 'value ' , 86400 , 'test.com ' , '/sub ' );
0 commit comments