summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2023-10-04 18:06:24 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2023-10-23 17:26:31 +0100
commitaa63d2dbbcc13fbdfa846185d54d87d7822e2509 (patch)
tree15ecd778104b22e23187bce215b88b05320a9f1d
parent831102fe0ffd5c7fe475efe5f379c710d201f165 (diff)
ser: sequences: Test a more comprehensive round-trip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rw-r--r--src/ser.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/ser.rs b/src/ser.rs
index f87bea2..b9e3568 100644
--- a/src/ser.rs
+++ b/src/ser.rs
@@ -732,4 +732,28 @@ mod test {
let actual: Test = config.try_deserialize().unwrap();
assert_eq!(test, actual);
}
+
+ #[test]
+ fn test_nest() {
+ let val = serde_json::json! { {
+ "top": {
+ "num": 1,
+ "array": [2],
+ "nested": [[3,4]],
+ "deep": [{
+ "yes": true,
+ }],
+ "mixed": [
+ { "boolish": false, },
+ 42,
+ ["hi"],
+ { "inner": 66 },
+ 23,
+ ],
+ }
+ } };
+ let config = Config::try_from(&val).unwrap();
+ let output: serde_json::Value = config.try_deserialize().unwrap();
+ assert_eq!(val, output);
+ }
}