public function testSetNotModified()
{
- $response = new Response();
+ $response = new Response('foo');
$modified = $response->setNotModified();
$this->assertObjectHasAttribute('headers', $modified);
$this->assertObjectHasAttribute('content', $modified);
$this->assertObjectHasAttribute('statusText', $modified);
$this->assertObjectHasAttribute('charset', $modified);
$this->assertEquals(304, $modified->getStatusCode());
+
+ ob_start();
+ $modified->sendContent();
+ $string = ob_get_clean();
+ $this->assertEmpty($string);
}
public function testIsSuccessful()
$response->headers->set('Expires', -1);
$response->expire();
$this->assertNull($response->headers->get('Age'), '->expire() does not set the Age when the response is expired');
+
+ $response = new Response();
+ $response->headers->set('Expires', date(DATE_RFC2822, time() + 600));
+ $response->expire();
+ $this->assertNull($response->headers->get('Expires'), '->expire() removes the Expires header when the response is fresh');
}
public function testGetTtl()
$response->setCache(array('private' => false));
$this->assertTrue($response->headers->hasCacheControlDirective('public'));
$this->assertFalse($response->headers->hasCacheControlDirective('private'));
+
+ $response->setCache(array('immutable' => true));
+ $this->assertTrue($response->headers->hasCacheControlDirective('immutable'));
+
+ $response->setCache(array('immutable' => false));
+ $this->assertFalse($response->headers->hasCacheControlDirective('immutable'));
}
public function testSendContent()
$this->assertFalse($response->headers->hasCacheControlDirective('private'));
}
+ public function testSetImmutable()
+ {
+ $response = new Response();
+ $response->setImmutable();
+
+ $this->assertTrue($response->headers->hasCacheControlDirective('immutable'));
+ }
+
+ public function testIsImmutable()
+ {
+ $response = new Response();
+ $response->setImmutable();
+
+ $this->assertTrue($response->isImmutable());
+ }
+
public function testSetExpires()
{
$response = new Response();
$this->addToAssertionCount(1);
}
- /**
- * @group legacy
- * @expectedDeprecation Extending Symfony\Component\HttpFoundation\Response::getDate() in Symfony\Component\HttpFoundation\Tests\ExtendedResponse is deprecated %s.
- * @expectedDeprecation Extending Symfony\Component\HttpFoundation\Response::setLastModified() in Symfony\Component\HttpFoundation\Tests\ExtendedResponse is deprecated %s.
- */
- public function testDeprecations()
- {
- new ExtendedResponse();
-
- // Deprecations should not be triggered twice
- new ExtendedResponse();
- }
-
public function validContentProvider()
{
return array(
*/
public function ianaCodesReasonPhrasesProvider()
{
- if (!in_array('https', stream_get_wrappers(), true)) {
+ if (!\in_array('https', stream_get_wrappers(), true)) {
$this->markTestSkipped('The "https" wrapper is not available');
}
$ianaCodesReasonPhrases = array();
- $xpath = new \DomXPath($ianaHttpStatusCodes);
+ $xpath = new \DOMXPath($ianaHttpStatusCodes);
$xpath->registerNamespace('ns', 'http://www.iana.org/assignments');
$records = $xpath->query('//ns:record');
$value = $xpath->query('.//ns:value', $record)->item(0)->nodeValue;
$description = $xpath->query('.//ns:description', $record)->item(0)->nodeValue;
- if (in_array($description, array('Unassigned', '(Unused)'), true)) {
+ if (\in_array($description, array('Unassigned', '(Unused)'), true)) {
continue;
}