diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_regression.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/test_regression.rs b/tests/test_regression.rs new file mode 100644 index 0000000..7d2f492 --- /dev/null +++ b/tests/test_regression.rs @@ -0,0 +1,25 @@ +extern crate serde; +#[macro_use] +extern crate serde_derive; +extern crate serde_qs as qs; + +#[test] +fn double_encoding_keys() { + #[derive(Debug, Serialize, Deserialize, PartialEq)] + struct Human { + #[serde(rename = "full name")] + name: String, + } + + let human = Human { + name: "John Doe".to_string(), + }; + + let encoded = serde_qs::to_string(&human).unwrap(); + print!("{}", encoded); + assert_eq!( + serde_qs::from_str::<Human>(&encoded) + .unwrap(), + human + ); +} |