File tree 2 files changed +21
-0
lines changed
2 files changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -2217,6 +2217,8 @@ mod content {
2217
2217
Some ( Content :: Map ( v) ) => {
2218
2218
de:: Deserializer :: deserialize_any ( MapRefDeserializer :: new ( v) , visitor)
2219
2219
}
2220
+ // Covered by tests/test_enum_untagged.rs
2221
+ // newtype_enum::struct_from_seq
2220
2222
Some ( Content :: Seq ( v) ) => {
2221
2223
de:: Deserializer :: deserialize_any ( SeqRefDeserializer :: new ( v) , visitor)
2222
2224
}
Original file line number Diff line number Diff line change @@ -214,6 +214,25 @@ mod newtype_enum {
214
214
] ,
215
215
) ;
216
216
}
217
+
218
+ // Reaches crate::private::de::content::VariantRefDeserializer::struct_variant
219
+ // Content::Seq case
220
+ #[ test]
221
+ fn struct_from_seq ( ) {
222
+ assert_de_tokens (
223
+ & Outer :: Inner ( Inner :: Struct { f : 1 } ) ,
224
+ & [
225
+ Token :: Map { len : Some ( 1 ) } ,
226
+ // tag
227
+ Token :: Str ( "Struct" ) ,
228
+ // content
229
+ Token :: Seq { len : Some ( 1 ) } ,
230
+ Token :: U8 ( 1 ) ,
231
+ Token :: SeqEnd ,
232
+ Token :: MapEnd ,
233
+ ] ,
234
+ ) ;
235
+ }
217
236
}
218
237
219
238
// Reaches crate::private::de::content::ContentRefDeserializer::deserialize_option
You can’t perform that action at this time.
0 commit comments