auto merge of #9927 : chris-morgan/rust/fix-url-to_str-so-it-includes-the-port, r=huonw
Fixes #9451. Fixes chris-morgan/rust-http#16.
This commit is contained in:
commit
a1848bc755
1 changed files with 11 additions and 1 deletions
|
|
@ -671,9 +671,13 @@ pub fn to_str(url: &Url) -> ~str {
|
|||
};
|
||||
|
||||
let authority = if url.host.is_empty() {
|
||||
// If port is Some, we're in a nonsensical situation. Too bad.
|
||||
~""
|
||||
} else {
|
||||
format!("//{}{}", user, url.host)
|
||||
match url.port {
|
||||
Some(ref port) => format!("//{}{}:{}", user, url.host, *port),
|
||||
None => format!("//{}{}", user, url.host),
|
||||
}
|
||||
};
|
||||
|
||||
let query = if url.query.is_empty() {
|
||||
|
|
@ -895,6 +899,12 @@ mod tests {
|
|||
assert_eq!(from_str(url).unwrap().to_str(), url);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_url_with_port_parse_and_format() {
|
||||
let url = ~"http://rust-lang.org:80/doc";
|
||||
assert_eq!(from_str(url).unwrap().to_str(), url);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_scheme_host_only_url_parse_and_format() {
|
||||
let url = ~"http://rust-lang.org";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue