From 8fa9995ea9d9288cb68bf90a9ddc6821e71d0158 Mon Sep 17 00:00:00 2001 From: Juniper Tyree <50025784+juntyr@users.noreply.github.com> Date: Sun, 21 May 2023 10:07:22 +0300 Subject: [PATCH] Add test for #456 and fix bitflags glob import (#457) --- src/de/mod.rs | 6 +++--- tests/115_minimal_flattening.rs | 27 +++++++++++++++++++++++++++ tests/152_bitflags.rs | 2 +- 3 files changed, 31 insertions(+), 4 deletions(-) diff --git a/src/de/mod.rs b/src/de/mod.rs index 9da02a7a..9ce5ca45 100644 --- a/src/de/mod.rs +++ b/src/de/mod.rs @@ -521,7 +521,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> { } } - fn deserialize_seq(mut self, visitor: V) -> Result + fn deserialize_seq(self, visitor: V) -> Result where V: Visitor<'de>, { @@ -543,7 +543,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> { } } - fn deserialize_tuple(mut self, _len: usize, visitor: V) -> Result + fn deserialize_tuple(self, _len: usize, visitor: V) -> Result where V: Visitor<'de>, { @@ -585,7 +585,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> { }) } - fn deserialize_map(mut self, visitor: V) -> Result + fn deserialize_map(self, visitor: V) -> Result where V: Visitor<'de>, { diff --git a/tests/115_minimal_flattening.rs b/tests/115_minimal_flattening.rs index f4bb581c..49758d64 100644 --- a/tests/115_minimal_flattening.rs +++ b/tests/115_minimal_flattening.rs @@ -322,3 +322,30 @@ AllOptional({ assert_eq!(de, val); } + +#[derive(Clone, Debug, Default, Deserialize, PartialEq, Eq, Serialize)] +#[serde(deny_unknown_fields)] +pub struct AvailableCards { + pub left: u8, + pub right: u8, +} + +#[derive(Clone, Debug, Deserialize, Serialize, PartialEq, Eq)] +struct MapProperties { + #[serde(flatten)] + cards: AvailableCards, +} + +#[test] +fn test_issue_456() { + let map_properties = MapProperties { + cards: AvailableCards { + ..Default::default() + }, + }; + let ron = ron::to_string(&map_properties).unwrap(); + + let de: MapProperties = ron::from_str(&ron).unwrap(); + + assert_eq!(map_properties, de); +} diff --git a/tests/152_bitflags.rs b/tests/152_bitflags.rs index 2ae212cf..8a4435ee 100644 --- a/tests/152_bitflags.rs +++ b/tests/152_bitflags.rs @@ -1,4 +1,4 @@ -use bitflags::*; +use bitflags::bitflags; use option_set::option_set; bitflags! {