diff options
| author | troido <troido@protonmail.com> | 2020-09-27 15:33:09 +0200 |
|---|---|---|
| committer | troido <troido@protonmail.com> | 2020-09-27 15:33:09 +0200 |
| commit | a20bcfed7d3b6aacc3211514d9804651a458e725 (patch) | |
| tree | d4d4aaab553a3a9065e9dba8ef4fdec9ccf45778 /src/assemblage.rs | |
| parent | c3a282d04f1fd5c7cc4cf5ebb478129c2b1c42fa (diff) | |
better serialisation structure for encyclopediae
["list", [1, 2, 3]] is now just [1, 2, 3] and {"type": builtwall", "kwargs": {"health": 50}} is now {":template": "builtwall", "health": 50}
Diffstat (limited to 'src/assemblage.rs')
| -rw-r--r-- | src/assemblage.rs | 63 |
1 files changed, 15 insertions, 48 deletions
diff --git a/src/assemblage.rs b/src/assemblage.rs index e4554eb..9911c77 100644 --- a/src/assemblage.rs +++ b/src/assemblage.rs @@ -181,9 +181,9 @@ mod tests { ], "components": [ ["Visible", { - "sprite": ["arg", "sprite"], - "height": ["float", 0.1], - "name": ["string", "grass"] + "sprite": {"$arg": "sprite"}, + "height": 0.1, + "name": "grass" }] ] })).unwrap(); @@ -210,9 +210,9 @@ mod tests { ], "components": [ ["visible", { // no capital so invalid - "sprite": ["A", "sprite"], - "height": ["float", 0.1], - "name": ["string", "grass"] + "sprite": {"$arg": "sprite"}, + "height": 0.1, + "name": "grass" }] ] })).unwrap_err(); @@ -229,48 +229,15 @@ mod tests { ], "components": [ ["Visible", { - "sprite": ["A", "sprite"], - "height": ["string", "0.1"], - "name": ["string", "grass"] + "sprite": {"$arg": "sprite"}, + "height": "0.1", + "name": "grass" }] ] })).unwrap_err(); // assert_eq!(result, "parameter type incorrect"); } -// #[test] - fn unknown_argument_name(){ - Assemblage::deserialize(&json!({ - "arguments": [ - ["sprite", "string", "grass1"] - ], - "components": [ - ["Visible", { - "sprite": ["A", "sprits"], - "height": ["float", 0.1], - "name": ["string", "grass"] - }] - ] - })).unwrap_err(); -// assert_eq!(result, "unknown argument name"); - } - -// #[test] - fn wrong_argument_type(){ - Assemblage::deserialize(&json!({ - "arguments": [ - ["sprite", "int", 1] - ], - "components": [ - ["Visible", { - "sprite": ["A", "sprite"], - "height": ["float", 0.1], - "name": ["string", "grass"] - }] - ] - })).unwrap_err(); -// assert_eq!(result, "parameter type incorrect"); - } @@ -282,9 +249,9 @@ mod tests { ], "components": [ ["Visible", { - "sprite": ["A", "sprite"], - "height": ["float", 0.1], - "name": ["string", "grass"] + "sprite": {"$arg": "sprite"}, + "height": 0.1, + "name": "grass" }] ] })).unwrap_err(); @@ -300,9 +267,9 @@ mod tests { ], "components": [ ["Visible", { - "sprite": ["arg", "sprite"], - "height": ["float", 0.1], - "name": ["arg", "sprite"] + "sprite": {"$arg": "sprite"}, + "height": 0.1, + "name": {"$arg": "sprite"} }] ] })).unwrap(); |
