diff options
author | Sam Scott <sam.scott89@gmail.com> | 2017-03-20 20:28:20 +0000 |
---|---|---|
committer | Sam Scott <sam.scott89@gmail.com> | 2017-03-20 20:28:20 +0000 |
commit | d0c1a3ecc4ce648fcd9ecc7f0f6bca4b42872919 (patch) | |
tree | 1736dc189e88102f547e52aaeefd34e11247aae8 /tests/test_serialize.rs | |
parent | 81b77bd7e7f3397ddfeeb9a63f5c74a08fd6837c (diff) |
Add more tests for de/serializing Options.
Diffstat (limited to 'tests/test_serialize.rs')
-rw-r--r-- | tests/test_serialize.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/test_serialize.rs b/tests/test_serialize.rs index 4a9964a..5751ff6 100644 --- a/tests/test_serialize.rs +++ b/tests/test_serialize.rs @@ -41,3 +41,25 @@ fn serialize_struct() { fn urlencode(input: &str) -> String { str::replace(&str::replace(input, "[", "%5B"), "]", "%5D") } + +#[test] +fn serialize_option() { + #[derive(Debug,Serialize,Deserialize,PartialEq)] + struct Query { + vec: Option<Vec<u8>>, + } + + let params = ""; + let query = Query { + vec: None, + }; + let rec_params = qs::to_string(&query).unwrap(); + assert_eq!(rec_params, params); + + let params = urlencode("vec[0]=1&vec[1]=2"); + let query = Query { + vec: Some(vec![1,2]), + }; + let rec_params = qs::to_string(&query).unwrap(); + assert_eq!(rec_params, params); +} |