Exemplo n.º 1
0
 public function testGetCookies()
 {
     $response = new Response();
     $this->assertEquals(0, count($response->getCookies()));
     $response = $response->withCookie('test_cookie');
     $this->assertEquals(1, count($response->getCookies()));
 }
Exemplo n.º 2
0
 /**
  * Create a JSON response with the given data.
  *
  * Default JSON encoding is performed with the following options, which
  * produces RFC4627-compliant JSON, capable of embedding into HTML.
  *
  * - JSON_HEX_TAG
  * - JSON_HEX_APOS
  * - JSON_HEX_AMP
  * - JSON_HEX_QUOT
  * - JSON_UNESCAPED_SLASHES
  *
  * @param mixed $data Data to convert to JSON.
  * @param int $status Integer status code for the response; 200 by default.
  * @param array $headers Array of headers to use at initialization.
  * @param int $encodingOptions JSON encoding options to use.
  * @throws InvalidArgumentException if unable to encode the $data to JSON.
  */
 public function __construct($data, $status = 200, array $headers = [], $encodingOptions = self::DEFAULT_JSON_FLAGS)
 {
     $body = new Stream('php://temp', 'wb+');
     $body->write($this->jsonEncode($data, $encodingOptions));
     $headers = $this->injectContentType('application/json', $headers);
     parent::__construct($body, $status, $headers);
 }
Exemplo n.º 3
0
 /**
  * Create a redirect response.
  *
  * Produces a redirect response with a Location header and the given status
  * (302 by default).
  *
  * Note: this method overwrites the `location` $headers value.
  *
  * @param string|UriInterface $uri URI for the Location header.
  * @param int $status Integer status code for the redirect; 302 by default.
  * @param array $headers Array of headers to use at initialization.
  */
 public function __construct($uri, $status = 302, array $headers = [])
 {
     if (!is_string($uri) && !$uri instanceof UriInterface) {
         throw new InvalidArgumentException(sprintf('Uri provided to %s MUST be a string or Psr\\Http\\Message\\UriInterface instance; received "%s"', __CLASS__, is_object($uri) ? get_class($uri) : gettype($uri)));
     }
     $headers['location'] = [(string) $uri];
     parent::__construct('php://temp', $status, $headers);
 }
Exemplo n.º 4
0
 public function testReasonPhraseCanBeEmpty()
 {
     $response = $this->response->withStatus(599);
     $this->assertInternalType('string', $response->getReasonPhrase());
     $this->assertEmpty($response->getReasonPhrase());
 }
Exemplo n.º 5
0
 /**
  * Create an HTML response.
  *
  * Produces an HTML response with a Content-Type of text/html and a default
  * status of 200.
  *
  * @param string|StreamInterface $html HTML or stream for the message body.
  * @param int $status Integer status code for the response; 200 by default.
  * @param array $headers Array of headers to use at initialization.
  * @throws InvalidArgumentException if $html is neither a string or stream.
  */
 public function __construct($html, $status = 200, array $headers = [])
 {
     parent::__construct($this->createBody($html), $status, $this->injectContentType('text/html', $headers));
 }
Exemplo n.º 6
0
 /**
  * Create an empty response with the given status code.
  *
  * @param int $status Status code for the response, if any.
  * @param array $headers Headers for the response, if any.
  */
 public function __construct($status = 204, array $headers = [])
 {
     $body = new Stream('php://temp', 'r');
     parent::__construct($body, $status, $headers);
 }