private function _getScheme() { if ($schemeHeader = $this->_getSchemeHeader()) { return $schemeHeader; } else { $requestUrl = new Ergo_Http_Url($_SERVER['REQUEST_URI']); return $requestUrl->hasScheme() ? $requestUrl->getScheme() : 'http'; } }
public function testHasMethods() { $url = new Ergo_Http_Url('http://example.org/?query#fragment'); $this->assertTrue($url->hasHost(), 'URL should have host'); $this->assertTrue($url->hasScheme(), 'URL should have scheme'); $this->assertTrue($url->hasQueryString(), 'URL should have query string'); $this->assertTrue($url->hasFragmentString(), 'URL should have fragment string'); $this->assertTrue($url->hasPort(), 'URL should have port'); $this->assertTrue($url->hasDefaultPort(), 'URL should have default port'); $url = new Ergo_Http_Url('/'); $this->assertFalse($url->hasHost(), 'URL should not have host'); $this->assertFalse($url->hasScheme(), 'URL should not have scheme'); $this->assertFalse($url->hasQueryString(), 'URL should not have query string'); $this->assertFalse($url->hasFragmentString(), 'URL should not have fragment string'); $this->assertFalse($url->hasPort(), 'URL should not have port'); $this->assertFalse($url->hasDefaultPort(), 'URL should not have default port'); }