summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSam Scott <sam.scott89@gmail.com>2017-04-29 20:16:39 +0100
committerGitHub <noreply@github.com>2017-04-29 20:16:39 +0100
commit0f8cab2e85925099e35d0a42bac71f86ef624dbf (patch)
treecc63435072a4c31cd62c7758d3c8518ac91a658b /tests
parenta9ba2e0110fcadc65c0930f8e4d5c15e5a380a32 (diff)
parent50ee9133881bd5d8189c4396bd6eb3e360a5b19e (diff)
Merge pull request #4 from kardeiz/tests-02
Handle primitive map keys
Diffstat (limited to 'tests')
-rw-r--r--tests/test_deserialize.rs28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/test_deserialize.rs b/tests/test_deserialize.rs
index cd22458..4d44e5e 100644
--- a/tests/test_deserialize.rs
+++ b/tests/test_deserialize.rs
@@ -175,6 +175,34 @@ fn qs_test_simple() {
}
#[test]
+fn qs_u32_map() {
+ #[derive(Debug,Serialize,Deserialize,PartialEq)]
+ struct Query {
+ map: HashMap<u32, String>
+ }
+
+ let query = {
+ let mut map = HashMap::new();
+ map.insert(10, "Hello".into());
+ Query { map: map }
+ };
+
+ let params: Query = qs::from_str("map[10]=Hello").unwrap();
+ assert_eq!(params, query)
+}
+
+#[test]
+fn no_panic_on_parse_error() {
+ #[derive(Debug,Serialize,Deserialize,PartialEq)]
+ struct Query {
+ vec: Vec<u32>
+ }
+
+ let params: Result<Query, _> = qs::from_str("vec[]=a&vec[]=2");
+ assert!(params.is_err())
+}
+
+#[test]
fn qs_nesting() {
// t.deepEqual(qs.parse('a[b]=c'), { a: { b: 'c' } }, 'parses a single
// nested string');