mirror of
https://github.com/pezkuwichain/serde.git
synced 2026-06-15 13:11:01 +00:00
Add test to deserialize variants from usize and &[u8]
This commit is contained in:
@@ -22,6 +22,7 @@ enum Token {
|
|||||||
Char(char),
|
Char(char),
|
||||||
Str(&'static str),
|
Str(&'static str),
|
||||||
String(String),
|
String(String),
|
||||||
|
Bytes(&'static [u8]),
|
||||||
|
|
||||||
Option(bool),
|
Option(bool),
|
||||||
|
|
||||||
@@ -103,6 +104,7 @@ impl Deserializer for TokenDeserializer {
|
|||||||
Some(Token::Char(v)) => visitor.visit_char(v),
|
Some(Token::Char(v)) => visitor.visit_char(v),
|
||||||
Some(Token::Str(v)) => visitor.visit_str(v),
|
Some(Token::Str(v)) => visitor.visit_str(v),
|
||||||
Some(Token::String(v)) => visitor.visit_string(v),
|
Some(Token::String(v)) => visitor.visit_string(v),
|
||||||
|
Some(Token::Bytes(v)) => visitor.visit_bytes(v),
|
||||||
Some(Token::Option(false)) => visitor.visit_none(),
|
Some(Token::Option(false)) => visitor.visit_none(),
|
||||||
Some(Token::Option(true)) => visitor.visit_some(self),
|
Some(Token::Option(true)) => visitor.visit_some(self),
|
||||||
Some(Token::Unit) => visitor.visit_unit(),
|
Some(Token::Unit) => visitor.visit_unit(),
|
||||||
@@ -978,4 +980,24 @@ declare_tests! {
|
|||||||
Token::EnumEnd,
|
Token::EnumEnd,
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
test_enum_unit_usize {
|
||||||
|
Enum::Unit => vec![
|
||||||
|
Token::EnumStart("Enum"),
|
||||||
|
Token::Usize(0),
|
||||||
|
|
||||||
|
Token::EnumUnit,
|
||||||
|
Token::Unit,
|
||||||
|
Token::EnumEnd,
|
||||||
|
],
|
||||||
|
}
|
||||||
|
test_enum_unit_bytes {
|
||||||
|
Enum::Unit => vec![
|
||||||
|
Token::EnumStart("Enum"),
|
||||||
|
Token::Bytes(b"Unit"),
|
||||||
|
|
||||||
|
Token::EnumUnit,
|
||||||
|
Token::Unit,
|
||||||
|
Token::EnumEnd,
|
||||||
|
],
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user