From fccd3e9fba4fdd18e161b6bbcf24c2337cfff081 Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Thu, 27 Jun 2019 10:07:06 -0700 Subject: [PATCH] Add deserialization tests for IgnoredAny --- test_suite/tests/test_de.rs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/test_suite/tests/test_de.rs b/test_suite/tests/test_de.rs index f1f7739d..90e0f395 100644 --- a/test_suite/tests/test_de.rs +++ b/test_suite/tests/test_de.rs @@ -124,6 +124,19 @@ enum EnumOther { Other, } +#[derive(PartialEq, Debug)] +struct IgnoredAny; + +impl<'de> Deserialize<'de> for IgnoredAny { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + serde::de::IgnoredAny::deserialize(deserializer)?; + Ok(IgnoredAny) + } +} + ////////////////////////////////////////////////////////////////////////// macro_rules! declare_tests { @@ -929,6 +942,21 @@ declare_tests! { Token::SeqEnd, ], } + test_ignored_any { + IgnoredAny => &[ + Token::Str("s"), + ], + IgnoredAny => &[ + Token::Seq { len: Some(1) }, + Token::Bool(true), + Token::SeqEnd, + ], + IgnoredAny => &[ + Token::Enum { name: "E" }, + Token::Str("Rust"), + Token::Unit, + ], + } } declare_tests! {