Skip to content
This repository has been archived by the owner on Mar 25, 2024. It is now read-only.

Commit

Permalink
Add TaggedValue to_value/from_value test
Browse files Browse the repository at this point in the history
Currently fails with:

    ---- test_tagged stdout ----
    thread 'test_tagged' panicked at 'assertion failed: `(left == right)`
      left: `TaggedValue { tag: !Variant, value: Number(0) }`,
     right: `Mapping {"!Variant": Number(0)}`', tests/test_value.rs:148:5
  • Loading branch information
dtolnay committed Aug 13, 2022
1 parent 144eb66 commit d61a571
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion tests/test_value.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
use indoc::indoc;
use serde::de::IntoDeserializer;
use serde::Deserialize;
use serde_derive::Deserialize;
use serde_derive::{Deserialize, Serialize};
use serde_yaml::{Number, Value};

#[test]
Expand Down Expand Up @@ -131,3 +131,19 @@ fn test_debug() {

assert_eq!(debug, expected);
}

#[test]
fn test_tagged() {
#[derive(Serialize)]
enum Enum {
Variant(usize),
}

let value = serde_yaml::to_value(&Enum::Variant(0)).unwrap();

let deserialized: serde_yaml::Value = serde_yaml::from_value(value.clone()).unwrap();
assert_eq!(value, deserialized);

let serialized = serde_yaml::to_value(&value).unwrap();
assert_eq!(value, serialized);
}

0 comments on commit d61a571

Please sign in to comment.