From 12b688c9d77f6d0803327ad0ad8526c817541e4a Mon Sep 17 00:00:00 2001 From: Mingun Date: Sun, 8 Jan 2023 13:07:09 +0500 Subject: [PATCH] Add regression test for #429 --- tests/serde-issues.rs | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/tests/serde-issues.rs b/tests/serde-issues.rs index ca9a5b54..a0612cb7 100644 --- a/tests/serde-issues.rs +++ b/tests/serde-issues.rs @@ -142,6 +142,43 @@ fn issue349() { ); } +/// Regression test for https://github.com/tafia/quick-xml/issues/429. +#[test] +fn issue429() { + #[derive(Debug, Deserialize, Serialize, PartialEq)] + enum State { + A, + B, + C, + } + + #[derive(Debug, Deserialize, Serialize, PartialEq)] + struct StateOuter { + #[serde(rename = "$text")] + state: State, + } + + #[derive(Debug, Deserialize, Serialize, PartialEq)] + pub struct Root { + state: StateOuter, + } + + assert_eq!( + from_str::("B").unwrap(), + Root { + state: StateOuter { state: State::B } + } + ); + + assert_eq!( + to_string(&Root { + state: StateOuter { state: State::B } + }) + .unwrap(), + "B" + ); +} + /// Regression test for https://github.com/tafia/quick-xml/issues/537. /// /// This test checks that special `xmlns:xxx` attributes uses full name of