aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/net/lib.rs
diff options
context:
space:
mode:
authorMs2ger <Ms2ger@gmail.com>2016-11-07 15:00:47 +0100
committerMs2ger <Ms2ger@gmail.com>2016-11-07 15:10:47 +0100
commitb64ca44953ab26fdfcaa2736eb9a7c9e0bd3d6aa (patch)
treeae67a712c47736078fff60c212a3bac9acda1f24 /tests/unit/net/lib.rs
parent1c26f44cbb23e7da3b9d63f0223c8d5d43eec958 (diff)
downloadservo-b64ca44953ab26fdfcaa2736eb9a7c9e0bd3d6aa.tar.gz
servo-b64ca44953ab26fdfcaa2736eb9a7c9e0bd3d6aa.zip
Move make_server to the root of the net unit tests crate.
Diffstat (limited to 'tests/unit/net/lib.rs')
-rw-r--r--tests/unit/net/lib.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/unit/net/lib.rs b/tests/unit/net/lib.rs
index 4f1f91f923d..4dbaa6fb3e5 100644
--- a/tests/unit/net/lib.rs
+++ b/tests/unit/net/lib.rs
@@ -35,6 +35,7 @@ extern crate util;
use devtools_traits::DevtoolsControlMsg;
use filemanager_thread::{TestProvider, TEST_PROVIDER};
+use hyper::server::{Handler, Listening, Server};
use net::fetch::methods::{FetchContext, fetch};
use net::filemanager_thread::FileManager;
use net::test::HttpState;
@@ -44,6 +45,7 @@ use net_traits::response::Response;
use std::rc::Rc;
use std::sync::mpsc::Sender;
use std::thread;
+use url::Url;
const DEFAULT_USER_AGENT: &'static str = "Such Browser. Very Layout. Wow.";
@@ -79,3 +81,13 @@ fn fetch_async(request: Request, target: Box<FetchTaskTarget + Send>, dc: Option
fn fetch_sync(request: Request, dc: Option<Sender<DevtoolsControlMsg>>) -> Response {
fetch(Rc::new(request), &mut None, new_fetch_context(dc))
}
+
+fn make_server<H: Handler + 'static>(handler: H) -> (Listening, Url) {
+ // this is a Listening server because of handle_threads()
+ let server = Server::http("0.0.0.0:0").unwrap().handle_threads(handler, 1).unwrap();
+ let port = server.socket.port().to_string();
+ let mut url_string = "http://localhost:".to_owned();
+ url_string.push_str(&port);
+ let url = Url::parse(&url_string).unwrap();
+ (server, url)
+}