Ejemplo n.º 1
0
 public function withUri(Uri $uri, bool $preserveHost = false) : HttpRequest
 {
     $request = clone $this;
     $request->uri = $uri;
     $host = $uri->getHost();
     if ($host != '') {
         $host .= $uri->getPort() ? ':' . $uri->getPort() : '';
         if ($preserveHost) {
             if (empty($request->getHeader('Host'))) {
                 $request = $request->withHeader('Host', $host);
             }
         } else {
             $request = $request->withHeader('Host', $host);
         }
     }
     return $request;
 }
Ejemplo n.º 2
0
 public function testPort()
 {
     $uri1 = new Uri('http://example.com:80');
     $uri2 = new Uri('http://example.com:443');
     $uri3 = new Uri('https://example.com:80');
     $uri4 = new Uri('https://example.com:443');
     $this->assertEquals('', $uri1->getPort());
     $this->assertEquals(443, $uri2->getPort());
     $this->assertEquals(80, $uri3->getPort());
     $this->assertEquals('', $uri4->getPort());
 }
Ejemplo n.º 3
0
 public function testShouldParseUriWithPortSuccessful()
 {
     $case = 'http://www.example.com:3232/payments/1?foo=bar&baz=bar#order';
     $uri = new Uri($case);
     $this->assertEquals(3232, $uri->getPort());
     $this->assertEquals('www.example.com', $uri->getHost());
     $this->assertEquals('http', $uri->getScheme());
     $this->assertNotEmpty($uri->getPath());
     $this->assertEquals('/payments/1', $uri->getPath());
     $this->assertNotEmpty($uri->getQuery());
     $this->assertEquals('foo=bar&baz=bar', $uri->getQuery());
     $this->assertNotEmpty($uri->getFragment());
     $this->assertEquals('order', $uri->getFragment());
     $this->assertEquals($case, $uri->__toString());
 }
Ejemplo n.º 4
0
 /**
  * @covers MediaCore\Uri::getPort
  */
 public function testGetPort()
 {
     $url = 'http://example.com:8080/path/to/directory?foo=bar';
     $uri = new Uri($url);
     $this->assertEquals('8080', $uri->getPort());
     $url = 'http://example.com/path/to/directory?foo=bar';
     $uri = new Uri($url);
     $this->assertNull($uri->getPort());
 }
Ejemplo n.º 5
0
 public function testSetGetPort()
 {
     $port = '8080';
     $this->uri->setPort($port);
     $this->assertEquals($port, $this->uri->getPort());
 }
Ejemplo n.º 6
0
 public function testGetPortWithSchemeWithoutPort()
 {
     $uri = new Uri('http', 'www.example.com');
     $this->assertNull($uri->getPort());
 }
Ejemplo n.º 7
0
 public function testSetPort()
 {
     $uri = new Uri('http', 'www.yahoo.com:8080');
     $this->assertEquals('www.yahoo.com:8080', $uri->getAuthority());
     $this->assertEquals('www.yahoo.com', $uri->getHost());
     $this->assertEquals(8080, $uri->getPort());
     $this->assertEquals('http://www.yahoo.com:8080', $uri->toString());
 }