url test and some fixes
This commit is contained in:
parent
58cfd1ab60
commit
8e6fe03607
@ -95,7 +95,7 @@ impl ClientBuilder {
|
||||
|
||||
/// Set default header
|
||||
pub fn header(mut self, name: impl ToString, value: impl ToString) -> Self {
|
||||
self.headers.put(name, value.to_string());
|
||||
self.headers.add(name, value.to_string());
|
||||
self
|
||||
}
|
||||
}
|
||||
|
@ -45,8 +45,13 @@ async fn connect_stream(proxy: Proxy, site_host: &str) -> Result<Box<dyn Request
|
||||
}
|
||||
|
||||
async fn send_request(
|
||||
mut request: HttpRequest, ssl_verify: bool, proxy: Proxy, headers: Headers,
|
||||
connect_timeout: Option<Duration>, write_timeout: Option<Duration>, read_timeout: Option<Duration>
|
||||
mut request: HttpRequest,
|
||||
ssl_verify: bool,
|
||||
proxy: Proxy,
|
||||
headers: Headers,
|
||||
connect_timeout: Option<Duration>,
|
||||
write_timeout: Option<Duration>,
|
||||
read_timeout: Option<Duration>
|
||||
) -> Result<HttpResponse, HttpError> {
|
||||
for (key, value) in headers.entries() {
|
||||
request.headers.put_default(key, value);
|
||||
|
@ -75,7 +75,7 @@ impl RequestBuilder {
|
||||
|
||||
/// Set header
|
||||
pub fn header(mut self, name: impl ToString, value: impl ToString) -> Self {
|
||||
self.headers.put(name, value.to_string());
|
||||
self.headers.add(name, value.to_string());
|
||||
self
|
||||
}
|
||||
|
||||
|
35
tests/url_test.rs
Executable file
35
tests/url_test.rs
Executable file
@ -0,0 +1,35 @@
|
||||
use ezhttp::request::IntoURL;
|
||||
|
||||
#[test]
|
||||
fn url_full() {
|
||||
let url = "https://meex.lol:456/dku?key=value&key2=value2#hex_id".to_url().unwrap();
|
||||
let root = url.clone().root.unwrap();
|
||||
assert_eq!(root.domain, "meex.lol");
|
||||
assert_eq!(root.port, 456);
|
||||
assert_eq!(root.scheme, "https");
|
||||
assert_eq!(url.anchor.clone(), Some("hex_id".to_string()));
|
||||
assert_eq!(url.path.clone(), "/dku");
|
||||
assert_eq!(url.query.get("key"), Some(&"value".to_string()));
|
||||
assert_eq!(url.query.get("key2"), Some(&"value2".to_string()));
|
||||
assert_eq!(url.query.len(), 2);
|
||||
assert!(
|
||||
url.to_string() == "https://meex.lol:456/dku?key=value&key2=value2#hex_id" ||
|
||||
url.to_string() == "https://meex.lol:456/dku?key2=value2&key=value#hex_id"
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn url_path() {
|
||||
let url = "/dku?key=value&key2=value2#hex_id".to_url().unwrap();
|
||||
assert!(url.root.is_none());
|
||||
assert_eq!(url.anchor.clone(), Some("hex_id".to_string()));
|
||||
assert_eq!(url.path.clone(), "/dku");
|
||||
assert_eq!(url.query.get("key"), Some(&"value".to_string()));
|
||||
assert_eq!(url.query.get("key2"), Some(&"value2".to_string()));
|
||||
assert_eq!(url.query.len(), 2);
|
||||
assert_eq!(url.query.len(), 2);
|
||||
assert!(
|
||||
url.to_string() == "/dku?key=value&key2=value2#hex_id" ||
|
||||
url.to_string() == "/dku?key2=value2&key=value#hex_id"
|
||||
);
|
||||
}
|
Loading…
Reference in New Issue
Block a user