作者:lexiphani
项目:encrypted-cookie-bundl
function it_should_not_encrypt_a_cookie(Request $request, FilterResponseEvent $event, ResponseHeaderBag $headers, Response $response)
{
$currentCookie = new Cookie('not_session', 'test', 3600, '/account', 'example.com', true, false);
$headers->getCookies()->willReturn([$currentCookie]);
$response->headers = $headers;
$event->getRequest()->willReturn($request);
$event->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST);
$event->getResponse()->willReturn($response);
$this->onKernelResponse($event)->shouldReturn(null);
}
作者:nickaggarwa
项目:sample-symfony
public function testCacheControlHeader()
{
$bag = new ResponseHeaderBag(array());
$this->assertEquals('no-cache', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('no-cache'));
$bag = new ResponseHeaderBag(array('Cache-Control' => 'public'));
$this->assertEquals('public', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('public'));
$bag = new ResponseHeaderBag(array('ETag' => 'abcde'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('private'));
$this->assertTrue($bag->hasCacheControlDirective('must-revalidate'));
$this->assertFalse($bag->hasCacheControlDirective('max-age'));
$bag = new ResponseHeaderBag(array('Expires' => 'Wed, 16 Feb 2011 14:17:43 GMT'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Expires' => 'Wed, 16 Feb 2011 14:17:43 GMT', 'Cache-Control' => 'max-age=3600'));
$this->assertEquals('max-age=3600, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Last-Modified' => 'abcde'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Etag' => 'abcde', 'Last-Modified' => 'abcde'));
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'max-age=100'));
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 's-maxage=100'));
$this->assertEquals('s-maxage=100', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'private, max-age=100'));
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'public, max-age=100'));
$this->assertEquals('max-age=100, public', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag();
$bag->set('Last-Modified', 'abcde');
$this->assertEquals('private, must-revalidate', $bag->get('Cache-Control'));
}
作者:JeroenDeDau
项目:QueryrAP
public function testWhenOnFirstPageAndPartialRestSet_nextPageIsNotLinked()
{
$headers = new ResponseHeaderBag();
$headerSetter = new PaginationHeaderSetter($headers);
$headerSetter->setHeaders('http://localhost/test', new SimplePaginationInfo(1, 10), 9);
$this->assertSame([], $headers->get('Link', null, false));
}
作者:wdalmu
项目:franki
public function it_should_prepare_the_bag(Request $request, Response $response, ResponseHeaderBag $bag)
{
$response->headers = $bag;
$bag->set("content-type", "application/json")->shouldBeCalledTimes(1);
$this->test($request, $response);
$this->getBag()->shouldBe(["test" => "Ok"]);
}
作者:notbrai
项目:symfon
public function testCacheControlHeader()
{
$bag = new ResponseHeaderBag(array(), 'response');
$this->assertEquals('no-cache', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('no-cache'));
$bag = new ResponseHeaderBag(array('Cache-Control' => 'public'), 'response');
$this->assertEquals('public', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('public'));
$bag = new ResponseHeaderBag(array('ETag' => 'abcde'), 'response');
$this->assertEquals('private, max-age=0, must-revalidate', $bag->get('Cache-Control'));
$this->assertTrue($bag->hasCacheControlDirective('private'));
$this->assertTrue($bag->hasCacheControlDirective('must-revalidate'));
$this->assertEquals(0, $bag->getCacheControlDirective('max-age'));
$bag = new ResponseHeaderBag(array('Last-Modified' => 'abcde'), 'response');
$this->assertEquals('private, max-age=0, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('Etag' => 'abcde', 'Last-Modified' => 'abcde'), 'response');
$this->assertEquals('private, max-age=0, must-revalidate', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'max-age=100'), 'response');
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 's-maxage=100'), 'response');
$this->assertEquals('s-maxage=100', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'private, max-age=100'), 'response');
$this->assertEquals('max-age=100, private', $bag->get('Cache-Control'));
$bag = new ResponseHeaderBag(array('cache-control' => 'public, max-age=100'), 'response');
$this->assertEquals('max-age=100, public', $bag->get('Cache-Control'));
}
作者:nightchille
项目:symfon
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()));
}
作者:AbdoulNdiay
项目:DunglasAngularCsrfBundl
public function it_sets_cookie_when_it_does(FilterResponseEvent $event, Response $response, ResponseHeaderBag $headers)
{
$headers->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'));
$response->headers = $headers;
$event->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST)->shouldBeCalled();
$event->getRequest()->willReturn($this->secureRequest)->shouldBeCalled();
$event->getResponse()->willReturn($response)->shouldBeCalled();
$this->onKernelResponse($event);
}
作者:lara-middlewar
项目:response-tim
function it_should_set_response_time_to_response_header(Request $req, Response $res, ResponseHeaderBag $bag)
{
$res->headers = $bag;
static::$timer->getStartMilliseconds()->willReturn(1426009224940.0);
static::$timer->getEndMilliseconds()->willReturn(1426009226260.0);
$bag->set('X-Response-Time', '1320ms', false)->shouldBeCalled();
$next = function ($req) use($res) {
return $res->getWrappedObject();
};
$this->handle($req, $next)->shouldReturn($res);
}
作者:lara-middlewar
项目:request-i
function it_should_set_response_time_to_response_header(Request $req, Response $res, ResponseHeaderBag $bag)
{
$res->headers = $bag;
$uuid = '25769c6c-d34d-4bfe-ba98-e0ee856f3e7a';
static::$generator->getV4Uuid()->willReturn($uuid);
$req->merge(['request-id' => $uuid])->shouldBeCalled();
$bag->set('Request-Id', $uuid, false)->shouldBeCalled();
$next = function ($req) use($res) {
return $res->getWrappedObject();
};
$this->handle($req, $next)->shouldReturn($res);
}
作者:TheMadelein
项目:Syliu
function it_persists_fake_channel_codes_in_a_cookie(FakeChannelCodeProviderInterface $fakeHostnameProvider, FilterResponseEvent $filterResponseEvent, Request $request, Response $response, ResponseHeaderBag $responseHeaderBag)
{
$filterResponseEvent->getRequestType()->willReturn(HttpKernelInterface::MASTER_REQUEST);
$filterResponseEvent->getRequest()->willReturn($request);
$fakeHostnameProvider->getCode($request)->willReturn('fake_channel_code');
$filterResponseEvent->getResponse()->willReturn($response);
$response->headers = $responseHeaderBag;
$responseHeaderBag->setCookie(Argument::that(function (Cookie $cookie) {
if ($cookie->getName() !== '_channel_code') {
return false;
}
if ($cookie->getValue() !== 'fake_channel_code') {
return false;
}
return true;
}))->shouldBeCalled();
$this->onKernelResponse($filterResponseEvent);
}
作者:rfc148
项目:pade
public function testRemoveCookie()
{
$bag = new ResponseHeaderBag();
$bag->setCookie(new Cookie('foo', 'bar', 0, '/path/foo', 'foo.bar'));
$bag->setCookie(new Cookie('bar', 'foo', 0, '/path/bar', 'foo.bar'));
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertTrue(isset($cookies['foo.bar']['/path/foo']));
$bag->removeCookie('foo', '/path/foo', 'foo.bar');
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['foo.bar']['/path/foo']));
$bag->removeCookie('bar', '/path/bar', 'foo.bar');
$cookies = $bag->getCookies(ResponseHeaderBag::COOKIES_ARRAY);
$this->assertFalse(isset($cookies['foo.bar']));
}
作者:agitatio
项目:api-bundl
protected function getHttpHeaders(Request $httpRequest, $result)
{
$headers = new ResponseHeaderBag();
$headers->set("Content-Type", $this->getMimeType() . "; charset=utf-8");
return $headers;
}
作者:hilmysyari
项目:sisfit
/**
* @dataProvider provideMakeDispositionFail
* @expectedException \InvalidArgumentException
*/
public function testMakeDispositionFail($disposition, $filename)
{
$headers = new ResponseHeaderBag();
$headers->makeDisposition($disposition, $filename);
}
作者:supportyar
项目:framework-bundl
/**
* @param array $app
* @param ResponseHeaderBag $headers
*/
private function setPageDataIfExists(array $app, ResponseHeaderBag $headers)
{
if (isset($app[Headers::PAGE_DATA_KEY])) {
$headers->set(Headers::PAGE_DATA_HEADER, json_encode(Escaper::escape($app[Headers::PAGE_DATA_KEY])));
}
}
作者:cespedos
项目:kret
function it_listens_cookie_event(CookieEvent $cookieEvent, Response $response, ResponseHeaderBag $responseHeaderBag, SessionInterface $session)
{
$cookieEvent->getSession()->shouldBeCalled()->willReturn($session);
$session->has('access_token')->shouldBeCalled()->willReturn(true);
$session->has('refresh_token')->shouldBeCalled()->willReturn(true);
$cookieEvent->getResponse()->shouldBeCalled()->willReturn($response);
$session->get('access_token')->shouldBeCalled()->willReturn('accesstoken');
$session->get('refresh_token')->shouldBeCalled()->willReturn('refreshtoken');
$responseHeaderBag->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'))->shouldBeCalled();
$responseHeaderBag->setCookie(Argument::type('Symfony\\Component\\HttpFoundation\\Cookie'))->shouldBeCalled();
$response->headers = $responseHeaderBag;
$this->onCookieEvent($cookieEvent);
}
作者:santiagosisu
项目:curso-sf
/**
* Check if we need to remove Cache-Control for SSL encrypted downloads when using IE < 9
*
* @link http://support.microsoft.com/kb/323308
*/
protected function ensureIEOverSSLCompatibility(Request $request)
{
if (false !== stripos($this->headers->get('Content-Disposition'), 'attachment') && preg_match('/MSIE (.*?);/i', $request->server->get('HTTP_USER_AGENT'), $match) == 1 && true === $request->isSecure()) {
if (intval(preg_replace("/(MSIE )(.*?);/", "\$2", $match[0])) < 9) {
$this->headers->remove('Cache-Control');
}
}
}
作者:NicolasBade
项目:symfon
protected function fixContentType()
{
if (!$this->headers->has('Content-Type')) {
$this->headers->set('Content-Type', 'text/html; charset=' . $this->charset);
} elseif ('text/' === substr($this->headers->get('Content-Type'), 0, 5) && false === strpos($this->headers->get('Content-Type'), 'charset')) {
// add the charset
$this->headers->set('Content-Type', $this->headers->get('Content-Type') . '; charset=' . $this->charset);
}
}
作者:hyk
项目:Depo
/**
* @param string $location
*
* @return Boolean
*
* @api
*/
public function isRedirect($location = null)
{
return in_array($this->statusCode, array(201, 301, 302, 303, 307)) && (null === $location ?: $location == $this->headers->get('Location'));
}
作者:hellovi
项目:symfon
public function isRedirected($location)
{
return $this->isRedirect() && $location == $this->headers->get('Location');
}
作者:elg
项目:elg
/**
* Sets headers to apply to all responses being sent
*
* @param string $name Header name
* @param string $value Header value
* @param bool $replace Replace existing headers
* @return void
*/
public function setHeader($name, $value, $replace = true)
{
$this->headers->set($name, $value, $replace);
}