/**
* Tests that existing headers are not overriden.
*/
public function testHeadersAreNotOverridenIfAlreadyPresentInResponse()
{
$response = new Response();
$response->headers->set('FOOBAR', 'content');
$responseEvent = new FilterResponseEvent($this->mockKernel(), new Request(), HttpKernelInterface::MASTER_REQUEST, $response);
/** @var ContaoFrameworkInterface|\PHPUnit_Framework_MockObject_MockObject $framework */
$framework = $this->getMock('Contao\\CoreBundle\\Framework\\ContaoFrameworkInterface');
$framework->expects($this->once())->method('isInitialized')->willReturn(true);
$listener = new MergeHttpHeadersListener($framework);
$listener->setHeaders(['FOOBAR: new-content']);
$listener->onKernelResponse($responseEvent);
$response = $responseEvent->getResponse();
$this->assertTrue($response->headers->has('FOOBAR'));
$allHeaders = $response->headers->get('FOOBAR', null, false);
$this->assertSame('content', $allHeaders[0]);
$this->assertSame('new-content', $allHeaders[1]);
}