public function testToStringIncludesCookieHeaders()
 {
     $bag = new ResponseHeaderBag(array());
     $bag->setCookie(new Cookie('foo', 'bar'));
     $this->assertContains("Set-Cookie: foo=bar; path=/; httponly", explode("\r\n", $bag->__toString()));
     $bag->clearCookie('foo');
     $this->assertContains("Set-Cookie: foo=deleted; expires=" . gmdate("D, d-M-Y H:i:s T", time() - 31536001) . "; httponly", explode("\r\n", $bag->__toString()));
 }
Exemplo n.º 2
0
 public function testCookiesWithSameNames()
 {
     $bag = new ResponseHeaderBag();
     $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/foo', 'foo.bar'));
     $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/bar', 'foo.bar'));
     $bag->setCookie(new Cookie('foo', 'bar', 0, '/path/bar', 'bar.foo'));
     $bag->setCookie(new Cookie('foo', 'bar'));
     $this->assertEquals(4, count($bag->getCookies()));
     $headers = explode("\r\n", $bag->__toString());
     $this->assertContains("Set-Cookie: foo=bar; path=/path/foo; domain=foo.bar; httponly", $headers);
     $this->assertContains("Set-Cookie: foo=bar; path=/path/foo; domain=foo.bar; httponly", $headers);
     $this->assertContains("Set-Cookie: foo=bar; path=/path/bar; domain=bar.foo; httponly", $headers);
     $this->assertContains("Set-Cookie: foo=bar; path=/; httponly", $headers);
     $cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
     $this->assertTrue(isset($cookies['foo.bar']['/path/foo']['foo']));
     $this->assertTrue(isset($cookies['foo.bar']['/path/bar']['foo']));
     $this->assertTrue(isset($cookies['bar.foo']['/path/bar']['foo']));
     $this->assertTrue(isset($cookies['']['/']['foo']));
 }