* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Security\Http\Tests\Logout; use PHPUnit\Framework\TestCase; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\ResponseHeaderBag; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Security\Http\Logout\CookieClearingLogoutHandler; class CookieClearingLogoutHandlerTest extends TestCase { public function testLogout() { $request = new Request(); $response = new Response(); $token = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\TokenInterface')->getMock(); $handler = new CookieClearingLogoutHandler(array('foo' => array('path' => '/foo', 'domain' => 'foo.foo'), 'foo2' => array('path' => null, 'domain' => null))); $cookies = $response->headers->getCookies(); $this->assertCount(0, $cookies); $handler->logout($request, $response, $token); $cookies = $response->headers->getCookies(ResponseHeaderBag::COOKIES_ARRAY); $this->assertCount(2, $cookies); $cookie = $cookies['foo.foo']['/foo']['foo']; $this->assertEquals('foo', $cookie->getName()); $this->assertEquals('/foo', $cookie->getPath()); $this->assertEquals('foo.foo', $cookie->getDomain()); $this->assertTrue($cookie->isCleared()); $cookie = $cookies['']['/']['foo2']; $this->assertStringStartsWith('foo2', $cookie->getName()); $this->assertEquals('/', $cookie->getPath()); $this->assertNull($cookie->getDomain()); $this->assertTrue($cookie->isCleared()); } } __halt_compiler();----SIGNATURE:----mwvuFIY5ZZoPP4RUfjlLcavFRCYTb480uoOpiZ8aJhGKkA5UEB5ifp4dXikFSLI4OaZkWrxuyuJOYT1xhPJyqoRbk5SW2SyJWUYV/QR1sG4FA/42Gq3pndDbTXJzMLs/lUhnbWRnEQGAxqLoBC2hxUpTgRgcz/sVLad17aOyVrzd1EcRYDPmN2loM4/D+AQE+xloAEiIWiZIm82vd3tCynqgg8umB5PBOtNAhV5kL6PhUKZ2kX2nZaIiRpnbZ+O6Q8n0eN0ZQY3pCFKumC/BpymOcOIEuFrwLh0hb27Po83vfmXdVlgyVV1WRrCcGTmYGWaouusCnTsBLlcFhOSQAYk/N2m0kRcbi15X0uuTqNzlJ6KlDj3/Zv0IRYMQEOhQx3ZgJnjJ0lq8FvE7gvsJqNXrCoJ4+Zm0lN86dvKQBMhVOI8mLWIEUB7nwpDf+HbMlx6PpyfHU0bSlxyDKBXr0CY2xeU8A9SR9oyVBvBYXkMSygDXg0YLK5T8KkXTLaHS1naWIAd0SgxsB0iPqOJUMZ6iIE9AbgxiueNxbcX8xKqbI0EQAq7K1RiZOqOMnmDT5VkEz802HXgDzIs0+5cIuxYWFyLDmSUvo/iWQKWK6QZd219sL90CfrYrnTxGYxQyZodn8AuaS+e/R0Q10J0hpcWiMd3m9hMByaSTckSDFTk=----ATTACHMENT:----MjA1MzM0MjQyNDk4ODczMyAzMzkxNTk1NjA3NzE0MTAgNDIwMDI1NjA5MTc5NTkyNw==