battler_data/moves/
mon_override.rs1use serde_string_enum::{
2 DeserializeLabeledStringEnum,
3 SerializeLabeledStringEnum,
4};
5
6#[derive(Debug, Clone, PartialEq, Eq, SerializeLabeledStringEnum, DeserializeLabeledStringEnum)]
8pub enum MonOverride {
9 #[string = "Target"]
11 Target,
12 #[string = "User"]
14 User,
15}
16
17#[cfg(test)]
18mod mon_override_test {
19 use crate::{
20 moves::MonOverride,
21 test_util::{
22 test_string_deserialization,
23 test_string_serialization,
24 },
25 };
26
27 #[test]
28 fn serializes_to_string() {
29 test_string_serialization(MonOverride::Target, "Target");
30 test_string_serialization(MonOverride::User, "User");
31 }
32
33 #[test]
34 fn deserializes_lowercase() {
35 test_string_deserialization("target", MonOverride::Target);
36 test_string_deserialization("user", MonOverride::User);
37 }
38}