Improve "expecting" message of adjacently tagged enum variant

This commit is contained in:
David Tolnay
2023-08-01 22:43:26 -07:00
parent 9bd52ec5c1
commit ef4f860384
6 changed files with 36 additions and 35 deletions
+6 -6
View File
@@ -2109,7 +2109,7 @@ fn test_adjacently_tagged_enum_bytes() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "Data",
variant: "A",
},
Token::Str("c"),
@@ -2130,7 +2130,7 @@ fn test_adjacently_tagged_enum_bytes() {
},
Token::Bytes(b"t"),
Token::UnitVariant {
name: "t",
name: "Data",
variant: "A",
},
Token::Bytes(b"c"),
@@ -2174,7 +2174,7 @@ fn test_adjacently_tagged_enum_containing_flatten() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "Data",
variant: "A",
},
Token::Str("c"),
@@ -2766,7 +2766,7 @@ fn test_expecting_message_adjacently_tagged_enum() {
// Check that #[serde(expecting = "...")] doesn't affect variant identifier error message
assert_de_tokens_error::<Enum>(
&[Token::Map { len: None }, Token::Str("tag"), Token::Unit],
r#"invalid type: unit value, expected enum tag"#,
r#"invalid type: unit value, expected variant of enum Enum"#,
);
}
@@ -3002,7 +3002,7 @@ mod flatten {
Token::U32(42),
Token::Str("tag"),
Token::UnitVariant {
name: "tag",
name: "Enum",
variant: "Struct",
},
Token::Str("content"),
@@ -3033,7 +3033,7 @@ mod flatten {
Token::U32(42),
Token::Str("tag"),
Token::UnitVariant {
name: "tag",
name: "Enum",
variant: "Newtype",
},
Token::Str("content"),
+19 -19
View File
@@ -473,7 +473,7 @@ fn test_adjacently_tagged_newtype_struct() {
Token::U32(5),
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "E",
variant: "Newtype",
},
Token::StructEnd,
@@ -1070,7 +1070,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::StructEnd,
@@ -1087,7 +1087,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::StructEnd,
@@ -1104,7 +1104,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::Str("c"),
@@ -1125,7 +1125,7 @@ fn test_adjacently_tagged_enum() {
Token::Unit,
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::StructEnd,
@@ -1144,7 +1144,7 @@ fn test_adjacently_tagged_enum() {
Token::Unit,
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::Str("g"),
@@ -1167,7 +1167,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Newtype",
},
Token::Str("c"),
@@ -1188,7 +1188,7 @@ fn test_adjacently_tagged_enum() {
Token::U8(1),
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Newtype",
},
Token::StructEnd,
@@ -1205,7 +1205,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Newtype",
},
Token::StructEnd,
@@ -1222,7 +1222,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Tuple",
},
Token::Str("c"),
@@ -1249,7 +1249,7 @@ fn test_adjacently_tagged_enum() {
Token::TupleEnd,
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Tuple",
},
Token::StructEnd,
@@ -1266,7 +1266,7 @@ fn test_adjacently_tagged_enum() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Struct",
},
Token::Str("c"),
@@ -1299,7 +1299,7 @@ fn test_adjacently_tagged_enum() {
Token::StructEnd,
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Struct",
},
Token::StructEnd,
@@ -1318,7 +1318,7 @@ fn test_adjacently_tagged_enum() {
Token::U8(1),
Token::U64(0), // tag field
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Newtype",
},
Token::StructEnd,
@@ -1337,7 +1337,7 @@ fn test_adjacently_tagged_enum() {
Token::U8(1),
Token::Bytes(b"t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Newtype",
},
Token::StructEnd,
@@ -1362,7 +1362,7 @@ fn test_adjacently_tagged_enum_deny_unknown_fields() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::Str("c"),
@@ -1379,7 +1379,7 @@ fn test_adjacently_tagged_enum_deny_unknown_fields() {
},
Token::Str("t"),
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::Str("c"),
@@ -1421,7 +1421,7 @@ fn test_adjacently_tagged_enum_deny_unknown_fields() {
},
Token::U64(0), // tag field
Token::UnitVariant {
name: "t",
name: "AdjacentlyTagged",
variant: "Unit",
},
Token::U64(3),
@@ -1620,7 +1620,7 @@ fn test_internally_tagged_struct_with_flattened_field() {
Token::Str("Struct"),
Token::Str("tag_enum"),
Token::UnitVariant {
name: "tag_enum",
name: "Enum",
variant: "A",
},
Token::Str("content"),