Пример #1
0
 public function testSetRequest()
 {
     $this->provider->register('request', function () {
         $request = ServerRequest::createFromGlobal();
         return $request->withAttribute('a', 123);
     });
     $this->assertEquals(123, $this->provider->getRequest()->getAttribute('a'));
     $newRequest = $request = ServerRequest::createFromGlobal();
     $newRequest = $newRequest->withAttribute('b', 456);
     $this->provider->setRequest($newRequest);
     $this->assertEquals($newRequest, $this->provider->getRequest());
 }
Пример #2
0
 public function testGetLanguage()
 {
     $this->assertEquals(null, $this->request->getLanguage());
     $uri = new Uri('http://server.loc');
     $stream = fopen('php://temp', 'wb+');
     $streamObject = new Stream($stream);
     $request = new ServerRequest('GET', $uri, $streamObject);
     $this->assertEquals('en', $request->getLanguage(array('en', 'uk', 'ru')));
     $request2 = $request->withHeader('Accept-Language', 'uk,ru;q=0.8,en-US;q=0.6,en;q=0.4');
     $this->assertEquals('uk', $request2->getLanguage());
     $request2 = $request->withHeader('Accept-Language', 'uk,ru;q=0.8,en-US;q=0.6,en;q=0.4');
     $this->assertEquals('de', $request2->getLanguage(array('de', 'pl')));
     $this->assertEquals('en', $request2->getLanguage(array('de', 'pl', 'en')));
 }
Пример #3
0
 /**
  * Get request
  * 
  * @return \Psr\Http\Message\ServerRequestInterface
  * @throws \RuntimeException
  */
 public function getRequest()
 {
     if ($this->request) {
         return $this->request;
     }
     if ($this->has('request')) {
         $this->request = $this->get('request');
         if (!$this->request instanceof ServerRequestInterface) {
             throw new \RuntimeException('The Request service must return an instance of \\Psr\\Http\\Message\\ServerRequestInterface.');
         }
     } else {
         $this->request = ServerRequest::createFromGlobal();
     }
     return $this->request;
 }