* * 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:----W1Y0u4k7D7BP8uLrK163pKr4E1ZqzcRG5i6LEPeSN8MKnkzTM8F/5HmzgopHN+NLceqXQQKWLbdad0fs+JPdIVLA/2qd6elOl57n+xCJJOu+V0WndNlc/4i2hRyjlM52CmuRzmFEtUZF0+jFc5MktWdPDa7CIAei8cY07ILbX3RR0dyJbl/I/7qyaGAegpPIK7k8V+Wb94D3XYMqIwXIaTIPN95ICwc3lqse0u2jkwnjQA2pZo8AuZ2VG/VdZDe7OvKG93tBssE46Z2w1g15tZRuIi8JsohB8liltz1eOkIEsWFCE8AmSZok6KAQGJ/sOV+v1wftdT7XaHIgv0CEdSME5GyVWYs2/al3uKHpP476kowcFRd/M6AcX1uvI4j0EZsuB3Bc+nK9llWaDN61ltbJ4CvismBxUUVb7D6FGo2mRNBgJLC905mAHVFZsWtTt85Njb/p+hrXPC4KKMyDRgNgn8sKkraQvvH4Ta1vSxtCaG3OtJTDIUhGRqTkOegUlbRRh6KGYVm43iQtQDFuXJbsYXOgq9xmi4oZcqy6AmWdKG7pYiWtHnMKZstWbQZt028djof/o9JyGz04LXt/ayYLeNtYZ5BACT2qcQsxWHGXpIaHYGgKpQp4Y+1YXygRxY6znD+RVo+hA0fubH5rSX7gSP+Ojw3LBTXQ5h1m0lY=----ATTACHMENT:----MzcwNzA2NjE5MTE5ODk3IDI4NDU0NDcxMjg3MzYwNDggMTAzNTgwOTkzNDU3MjIxNg==