From 3dd48d214baa952bc5809a91d0a4d4b2bf9beda4 Mon Sep 17 00:00:00 2001 From: Bogdan Cuza Date: Tue, 14 Apr 2015 23:05:33 +0300 Subject: [PATCH] Fix content type unit test --- tests/unit/Cargo.toml | 1 + tests/unit/net/data_loader.rs | 15 ++++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/tests/unit/Cargo.toml b/tests/unit/Cargo.toml index 5f0d1125796..3c3c80a3e4b 100644 --- a/tests/unit/Cargo.toml +++ b/tests/unit/Cargo.toml @@ -47,3 +47,4 @@ git = "https://github.com/servo/string-cache" [dependencies] cookie = "*" url = "*" +hyper = "0.3" diff --git a/tests/unit/net/data_loader.rs b/tests/unit/net/data_loader.rs index 370fa1bd28e..482a7462bea 100644 --- a/tests/unit/net/data_loader.rs +++ b/tests/unit/net/data_loader.rs @@ -2,12 +2,16 @@ * 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/. */ +extern crate hyper; + use net_traits::LoadData; use net_traits::ProgressMsg::{Payload, Done}; +use self::hyper::header::ContentType; +use self::hyper::mime::{Mime, TopLevel, SubLevel, Attr, Value}; #[cfg(test)] fn assert_parse(url: &'static str, - content_type: Option<(String, String)>, + content_type: Option, charset: Option, data: Option>) { use std::sync::mpsc::channel; @@ -47,13 +51,14 @@ fn plain() { #[test] fn plain_ct() { assert_parse("data:text/plain,hello", - Some(("text".to_string(), "plain".to_string())), None, Some(b"hello".iter().map(|&x| x).collect())); + Some(ContentType(Mime(TopLevel::Text, SubLevel::Plain, vec!()))), None, Some(b"hello".iter().map(|&x| x).collect())); } #[test] fn plain_charset() { assert_parse("data:text/plain;charset=latin1,hello", - Some(("text".to_string(), "plain".to_string())), Some("latin1".to_string()), Some(b"hello".iter().map(|&x| x).collect())); + Some(ContentType(Mime(TopLevel::Text, SubLevel::Plain, vec!((Attr::Charset, Value::Ext("latin1".to_string())))))), + Some("latin1".to_string()), Some(b"hello".iter().map(|&x| x).collect())); } #[test] @@ -64,12 +69,12 @@ fn base64() { #[test] fn base64_ct() { assert_parse("data:application/octet-stream;base64,C62+7w==", - Some(("application".to_string(), "octet-stream".to_string())), None, Some(vec!(0x0B, 0xAD, 0xBE, 0xEF))); + Some(ContentType(Mime(TopLevel::Application, SubLevel::Ext("octet-stream".to_string()), vec!()))), None, Some(vec!(0x0B, 0xAD, 0xBE, 0xEF))); } #[test] fn base64_charset() { assert_parse("data:text/plain;charset=koi8-r;base64,8PLl9+XkIO3l5Pfl5A==", - Some(("text".to_string(), "plain".to_string())), Some("koi8-r".to_string()), + Some(ContentType(Mime(TopLevel::Text, SubLevel::Plain, vec!((Attr::Charset, Value::Ext("koi8-r".to_string())))))), Some("koi8-r".to_string()), Some(vec!(0xF0, 0xF2, 0xE5, 0xF7, 0xE5, 0xE4, 0x20, 0xED, 0xE5, 0xE4, 0xF7, 0xE5, 0xE4))); }