ruwuma/tests/test_deserialize.rs
Anthony Ramine 7ddde33a33 Have a custom type for deserialising values (fixes #16)
This lets us handle Option values correctly.
2017-05-06 10:59:42 +02:00

35 lines
873 B
Rust

extern crate serde_urlencoded;
#[test]
fn deserialize_bytes() {
let result = vec![("first".to_owned(), 23), ("last".to_owned(), 42)];
assert_eq!(serde_urlencoded::from_bytes(b"first=23&last=42"),
Ok(result));
}
#[test]
fn deserialize_str() {
let result = vec![("first".to_owned(), 23), ("last".to_owned(), 42)];
assert_eq!(serde_urlencoded::from_str("first=23&last=42"),
Ok(result));
}
#[test]
fn deserialize_reader() {
let result = vec![("first".to_owned(), 23), ("last".to_owned(), 42)];
assert_eq!(serde_urlencoded::from_reader(b"first=23&last=42" as &[_]),
Ok(result));
}
#[test]
fn deserialize_option() {
let result = vec![
("first".to_owned(), Some(23)),
("last".to_owned(), Some(42)),
];
assert_eq!(serde_urlencoded::from_str("first=23&last=42"), Ok(result));
}