Diffstat (limited to 'tests/serde_deserializer.rs')
| -rw-r--r-- | tests/serde_deserializer.rs | 83 |
1 files changed, 42 insertions, 41 deletions
diff --git a/tests/serde_deserializer.rs b/tests/serde_deserializer.rs index a0e8792..ee9d7ae 100644 --- a/tests/serde_deserializer.rs +++ b/tests/serde_deserializer.rs @@ -1,41 +1,42 @@ -// use serde_json::json; -// use treaty::walkers::serde::deserializer::DeserializerWalker; -// use treaty::{Build, BuildExt as _}; -// -// use macro_rules_attribute::derive; -// -// mod common; -// -// #[test] -// fn demo() { -// let x = json!(true); -// -// let y = bool::build(DeserializerWalker::new(x)); -// -// assert!(y.unwrap()); -// } -// -// #[test] -// fn demo2() { -// let x = json!(42); -// -// let mut de = serde_json::Deserializer::from_str("42"); -// let y = u8::build(DeserializerWalker::new(&mut de)); -// -// assert_eq!(y.unwrap(), 42); -// } -// -// #[derive(Build!, Debug, PartialEq)] -// struct X { -// a: bool, -// b: i64, -// } -// -// #[test] -// fn demo3() { -// let x = json!({ "a": true, "b": 42 }); -// -// let y = X::build(DeserializerWalker::new(x)); -// -// assert_eq!(y.unwrap(), X { a: true, b: 101 }); -// } +use serde_json::json; +use treaty::walkers::serde::deserializer::DeserializerWalker; +use treaty::{Build, BuildExt as _, transform}; + +use macro_rules_attribute::derive; +use effectful::SendSync; + +mod common; + +#[test] +fn demo() { + let x = json!(true); + + let y = bool::build(DeserializerWalker::new(x)); + + assert!(y.unwrap()); +} + +#[test] +fn demo2() { + let x = json!(42); + + let mut de = serde_json::Deserializer::from_str("42"); + let y = u8::build(DeserializerWalker::new(&mut de)); + + assert_eq!(y.unwrap(), 42); +} + +#[derive(Build!, Debug, PartialEq)] +struct X { + a: bool, + b: i64, +} + +#[test] +fn demo3() { + let x = json!({ "a": true, "b": 42 }); + + let y = X::build(DeserializerWalker::new(x)); + + assert_eq!(y.unwrap(), X { a: true, b: 42 }); +} |