From a5efc01b5f6b9654b1bac4ebf63bd2627b665f3b Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Mon, 5 Dec 2016 11:38:37 -1000 Subject: [PATCH] Use the asynchronous fetching code in unit tests. This is the only code that is used in Servo proper, so it's a more useful thing to test. --- tests/unit/net/data_loader.rs | 4 ++-- tests/unit/net/fetch.rs | 34 ++++++++++++++-------------- tests/unit/net/http_loader.rs | 42 +++++++++++++++++------------------ tests/unit/net/lib.rs | 4 ---- 4 files changed, 40 insertions(+), 44 deletions(-) diff --git a/tests/unit/net/data_loader.rs b/tests/unit/net/data_loader.rs index 93c625f30d9..8cd9ddbb953 100644 --- a/tests/unit/net/data_loader.rs +++ b/tests/unit/net/data_loader.rs @@ -2,7 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -use fetch_sync; +use fetch; use hyper::header::ContentType; use hyper::mime::{Attr, Mime, SubLevel, TopLevel, Value}; use hyper_serde::Serde; @@ -21,7 +21,7 @@ fn assert_parse(url: &'static str, let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); - let response = fetch_sync(request, None); + let response = fetch(request, None); match data { Some(data) => { diff --git a/tests/unit/net/fetch.rs b/tests/unit/net/fetch.rs index b4223b2f7f4..ee6f425cd51 100644 --- a/tests/unit/net/fetch.rs +++ b/tests/unit/net/fetch.rs @@ -2,7 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -use {DEFAULT_USER_AGENT, new_fetch_context, fetch, fetch_sync, make_server}; +use {DEFAULT_USER_AGENT, new_fetch_context, fetch, make_server}; use devtools_traits::DevtoolsControlMsg; use devtools_traits::HttpRequest as DevtoolsHttpRequest; use devtools_traits::HttpResponse as DevtoolsHttpResponse; @@ -51,7 +51,7 @@ fn test_fetch_response_is_not_network_error() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); if fetch_response.is_network_error() { @@ -70,7 +70,7 @@ fn test_fetch_response_body_matches_const_message() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(!fetch_response.is_network_error()); @@ -90,7 +90,7 @@ fn test_fetch_aboutblank() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); assert!(!fetch_response.is_network_error()); assert!(*fetch_response.body.lock().unwrap() == ResponseBody::Done(vec![])); } @@ -144,7 +144,7 @@ fn test_fetch_file() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); assert!(!fetch_response.is_network_error()); assert_eq!(fetch_response.headers.len(), 1); let content_type: &ContentType = fetch_response.headers.get().unwrap(); @@ -169,7 +169,7 @@ fn test_fetch_ftp() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); assert!(fetch_response.is_network_error()); } @@ -179,7 +179,7 @@ fn test_fetch_bogus_scheme() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); assert!(fetch_response.is_network_error()); } @@ -210,7 +210,7 @@ fn test_cors_preflight_fetch() { *request.referrer_policy.get_mut() = Some(ReferrerPolicy::Origin); request.use_cors_preflight = true; request.mode = RequestMode::CorsMode; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(!fetch_response.is_network_error()); @@ -299,7 +299,7 @@ fn test_cors_preflight_fetch_network_error() { *request.referrer.borrow_mut() = Referrer::NoReferrer; request.use_cors_preflight = true; request.mode = RequestMode::CorsMode; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(fetch_response.is_network_error()); @@ -320,7 +320,7 @@ fn test_fetch_response_is_basic_filtered() { let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(!fetch_response.is_network_error()); @@ -366,7 +366,7 @@ fn test_fetch_response_is_cors_filtered() { let mut request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; request.mode = RequestMode::CorsMode; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(!fetch_response.is_network_error()); @@ -397,7 +397,7 @@ fn test_fetch_response_is_opaque_filtered() { let origin = Origin::Origin(UrlOrigin::new_opaque()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(!fetch_response.is_network_error()); @@ -445,7 +445,7 @@ fn test_fetch_response_is_opaque_redirect_filtered() { let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; request.redirect_mode.set(RedirectMode::Manual); - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); assert!(!fetch_response.is_network_error()); @@ -482,7 +482,7 @@ fn test_fetch_with_local_urls_only() { // Set the flag. request.local_urls_only = true; - fetch_sync(request, None) + fetch(request, None) }; let local_url = ServoUrl::parse("about:blank").unwrap(); @@ -519,7 +519,7 @@ fn setup_server_and_fetch(message: &'static [u8], redirect_cap: u32) -> Response let origin = Origin::Origin(url.origin()); let request = Request::new(url, Some(origin), false, None); *request.referrer.borrow_mut() = Referrer::NoReferrer; - let fetch_response = fetch_sync(request, None); + let fetch_response = fetch(request, None); let _ = server.close(); fetch_response } @@ -604,7 +604,7 @@ fn test_fetch_redirect_updates_method_runner(tx: Sender, status_code: Stat *request.referrer.borrow_mut() = Referrer::NoReferrer; *request.method.borrow_mut() = method; - let _ = fetch_sync(request, None); + let _ = fetch(request, None); let _ = server.close(); } @@ -757,7 +757,7 @@ fn test_fetch_with_devtools() { let (devtools_chan, devtools_port) = channel::(); - let _ = fetch_sync(request, Some(devtools_chan)); + let _ = fetch(request, Some(devtools_chan)); let _ = server.close(); // notification received from devtools diff --git a/tests/unit/net/http_loader.rs b/tests/unit/net/http_loader.rs index 27a46005c8e..c2b720517f7 100644 --- a/tests/unit/net/http_loader.rs +++ b/tests/unit/net/http_loader.rs @@ -7,7 +7,7 @@ use cookie_rs::Cookie as CookiePair; use devtools_traits::{ChromeToDevtoolsControlMsg, DevtoolsControlMsg, NetworkEvent}; use devtools_traits::HttpRequest as DevtoolsHttpRequest; use devtools_traits::HttpResponse as DevtoolsHttpResponse; -use fetch_sync; +use fetch; use fetch_with_context; use flate2::Compression; use flate2::write::{DeflateEncoder, GzEncoder}; @@ -142,7 +142,7 @@ fn test_check_default_headers_loaded_in_every_request() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); assert!(response.status.unwrap().is_success()); // Testing for method.POST @@ -156,7 +156,7 @@ fn test_check_default_headers_loaded_in_every_request() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); assert!(response.status.unwrap().is_success()); let _ = server.close(); @@ -178,7 +178,7 @@ fn test_load_when_request_is_not_get_or_head_and_there_is_no_body_content_length pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); assert!(response.status.unwrap().is_success()); let _ = server.close(); @@ -205,7 +205,7 @@ fn test_request_and_response_data_with_network_messages() { .. RequestInit::default() }); let (devtools_chan, devtools_port) = mpsc::channel(); - let response = fetch_sync(request, Some(devtools_chan)); + let response = fetch(request, Some(devtools_chan)); assert!(response.status.unwrap().is_success()); let _ = server.close(); @@ -292,7 +292,7 @@ fn test_request_and_response_message_from_devtool_without_pipeline_id() { .. RequestInit::default() }); let (devtools_chan, devtools_port) = mpsc::channel(); - let response = fetch_sync(request, Some(devtools_chan)); + let response = fetch(request, Some(devtools_chan)); assert!(response.status.unwrap().is_success()); let _ = server.close(); @@ -327,7 +327,7 @@ fn test_redirected_request_to_devtools() { .. RequestInit::default() }); let (devtools_chan, devtools_port) = mpsc::channel(); - let response = fetch_sync(request, Some(devtools_chan)); + let response = fetch(request, Some(devtools_chan)); let _ = pre_server.close(); let _ = post_server.close(); @@ -374,7 +374,7 @@ fn test_load_when_redirecting_from_a_post_should_rewrite_next_request_as_get() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = pre_server.close(); let _ = post_server.close(); @@ -402,7 +402,7 @@ fn test_load_should_decode_the_response_as_deflate_when_response_headers_have_co pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -431,7 +431,7 @@ fn test_load_should_decode_the_response_as_gzip_when_response_headers_have_conte pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -469,7 +469,7 @@ fn test_load_doesnt_send_request_body_on_any_redirect() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = pre_server.close(); let _ = post_server.close(); @@ -697,7 +697,7 @@ fn test_load_sets_content_length_to_length_of_request_body() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -725,7 +725,7 @@ fn test_load_uses_explicit_accept_from_headers_in_load_data() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -752,7 +752,7 @@ fn test_load_sets_default_accept_to_html_xhtml_xml_and_then_anything_else() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -780,7 +780,7 @@ fn test_load_uses_explicit_accept_encoding_from_load_data_headers() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -807,7 +807,7 @@ fn test_load_sets_default_accept_encoding_to_gzip_and_deflate() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -843,7 +843,7 @@ fn test_load_errors_when_there_a_redirect_loop() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server_a.close(); let _ = server_b.close(); @@ -886,7 +886,7 @@ fn test_load_succeeds_with_a_redirect_loop() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server_a.close(); let _ = server_b.close(); @@ -923,7 +923,7 @@ fn test_load_follows_a_redirect() { pipeline_id: Some(TEST_PIPELINE_ID), .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = pre_server.close(); let _ = post_server.close(); @@ -1045,7 +1045,7 @@ fn test_redirect_from_x_to_x_provides_x_with_cookie_from_first_response() { credentials_mode: CredentialsMode::Include, .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); @@ -1112,7 +1112,7 @@ fn test_auth_ui_needs_www_auth() { .. RequestInit::default() }); - let response = fetch_sync(request, None); + let response = fetch(request, None); let _ = server.close(); diff --git a/tests/unit/net/lib.rs b/tests/unit/net/lib.rs index 17877e6d0cb..d01bffbcb14 100644 --- a/tests/unit/net/lib.rs +++ b/tests/unit/net/lib.rs @@ -82,10 +82,6 @@ fn fetch(request: Request, dc: Option>) -> Response { receiver.recv().unwrap() } -fn fetch_sync(request: Request, dc: Option>) -> Response { - fetch_with_context(request, &new_fetch_context(dc)) -} - fn fetch_with_context(request: Request, context: &FetchContext) -> Response { methods::fetch(Rc::new(request), &mut None, context) }