Test setting response.body by fetching on a server

This commit is contained in:
Nikki 2016-01-18 15:12:31 -07:00
parent 03a0b73538
commit 4165786767
3 changed files with 39 additions and 7 deletions

View file

@ -6,7 +6,7 @@ use hyper::server::{Listening, Server};
use hyper::server::{Request as HyperRequest, Response as HyperResponse};
use net::fetch::methods::fetch;
use net_traits::request::{Context, Referer, Request};
use net_traits::response::Response;
use net_traits::response::{Response, ResponseBody};
use std::rc::Rc;
use url::Url;
@ -42,3 +42,24 @@ fn test_fetch_response_is_not_network_error() {
panic!("fetch response shouldn't be a network error");
}
}
#[test]
fn test_fetch_response_body_matches_const_message() {
static MESSAGE: &'static [u8] = b"Hello World!";
let (mut server, url) = make_server(MESSAGE);
let mut request = Request::new(url, Context::Fetch, false);
request.referer = Referer::NoReferer;
let wrapped_request = Rc::new(request);
let fetch_response = fetch(wrapped_request, false);
let _ = server.close();
match fetch_response.body {
ResponseBody::Done(body) => {
assert_eq!(body, MESSAGE);
},
_ => { panic!() }
};
}