24614e44bf
failures (1): regression::issue2565::simple_variant
42 lines
878 B
Rust
42 lines
878 B
Rust
use serde_derive::{Serialize, Deserialize};
|
|
use serde_test::{assert_tokens, Token};
|
|
|
|
#[derive(Serialize, Deserialize, Debug, PartialEq)]
|
|
enum Enum {
|
|
Simple {
|
|
a: i32,
|
|
},
|
|
Flatten {
|
|
#[serde(flatten)]
|
|
flatten: (),
|
|
a: i32,
|
|
},
|
|
}
|
|
|
|
#[test]
|
|
fn simple_variant() {
|
|
assert_tokens(
|
|
&Enum::Simple { a: 42 },
|
|
&[
|
|
Token::StructVariant { name: "Enum", variant: "Simple", len: 1 },
|
|
Token::Str("a"),
|
|
Token::I32(42),
|
|
Token::StructVariantEnd,
|
|
]
|
|
);
|
|
}
|
|
|
|
#[test]
|
|
fn flatten_variant() {
|
|
assert_tokens(
|
|
&Enum::Flatten { flatten: (), a: 42 },
|
|
&[
|
|
Token::NewtypeVariant { name: "Enum", variant: "Flatten" },
|
|
Token::Map { len: None },
|
|
Token::Str("a"),
|
|
Token::I32(42),
|
|
Token::MapEnd,
|
|
]
|
|
);
|
|
}
|