public function test_http_build_url() { $url = 'http://*****:*****@example.com:8080/path/?query#fragment'; $expected = 'http://example.com/'; $actual = util::http_build_url($url, array(), util::HTTP_URL_STRIP_ALL); $this->assertEquals($expected, $actual); $expected = 'http://example.com:8080/path/?query#fragment'; $actual = util::http_build_url($url, array(), util::HTTP_URL_STRIP_AUTH); $this->assertEquals($expected, $actual); $this->assertEquals('https://dev.example.com/', util::http_build_url('http://example.com/', array('scheme' => 'https', 'host' => 'dev.example.com'))); $this->assertEquals('http://example.com/#hi', util::http_build_url('http://example.com/', array('fragment' => 'hi'), util::HTTP_URL_REPLACE)); $this->assertEquals('http://example.com/page', util::http_build_url('http://example.com/', array('path' => 'page'), util::HTTP_URL_JOIN_PATH)); $this->assertEquals('http://example.com/page', util::http_build_url('http://example.com', array('path' => 'page'), util::HTTP_URL_JOIN_PATH)); $this->assertEquals('http://example.com/?hi=Bro', util::http_build_url('http://example.com/', array('query' => 'hi=Bro'), util::HTTP_URL_JOIN_QUERY)); $this->assertEquals('http://example.com/?show=1&hi=Bro', util::http_build_url('http://example.com/?show=1', array('query' => 'hi=Bro'), util::HTTP_URL_JOIN_QUERY)); $this->assertEquals('http://admin@example.com/', util::http_build_url('http://example.com/', array('user' => 'admin'))); $this->assertEquals('http://*****:*****@example.com/', util::http_build_url('http://example.com/', array('user' => 'admin', 'pass' => '1'))); }