From acaeea21657f7cd255e4878173203d7b47949195 Mon Sep 17 00:00:00 2001 From: mark Date: Sat, 22 Mar 2025 14:04:47 +0100 Subject: [PATCH] Add main.rs --- main.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 main.rs diff --git a/main.rs b/main.rs new file mode 100644 index 0000000..9eb8d91 --- /dev/null +++ b/main.rs @@ -0,0 +1,25 @@ +use serde::{Deserialize, Serialize}; + +#[test] +fn test() { + for (ty, str) in [ + (TileType::Rock, r#""ROCK""#), + (TileType::Grass, r#""GRASS""#), + (TileType::Force, r#""FORCE""#), + (TileType::MedicCenter, r#""MEDIC_CENTER""#), + (TileType::Lava, r#""LAVA""#), + ] { + assert_eq!(serde_json::to_string(&ty).unwrap(), str); + assert_eq!(serde_json::from_str::(str).unwrap(), ty); + } +} + +#[derive(Serialize, Deserialize, Debug, PartialEq, Eq)] +#[serde(rename_all = "SCREAMING_SNAKE_CASE")] +enum TileType { + Rock, + Grass, + Force, + MedicCenter, + Lava, +}