2015-04-11 01:55:59 +00:00
|
|
|
// Rust Bitcoin Library
|
|
|
|
// Written in 2014 by
|
|
|
|
// Andrew Poelstra <apoelstra@wpsoftware.net>
|
|
|
|
//
|
|
|
|
// To the extent possible under law, the author(s) have dedicated all
|
|
|
|
// copyright and related and neighboring rights to this software to
|
|
|
|
// the public domain worldwide. This software is distributed without
|
|
|
|
// any warranty.
|
|
|
|
//
|
|
|
|
// You should have received a copy of the CC0 Public Domain Dedication
|
|
|
|
// along with this software.
|
|
|
|
// If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
|
|
|
|
//
|
|
|
|
|
2021-11-05 21:58:18 +00:00
|
|
|
//! Bitcoin serde macros.
|
|
|
|
//!
|
|
|
|
//! This module provides internal macros used for unit tests.
|
2015-04-11 01:55:59 +00:00
|
|
|
//!
|
|
|
|
|
2019-03-26 16:05:51 +00:00
|
|
|
#[cfg(feature = "serde")]
|
2015-04-11 01:55:59 +00:00
|
|
|
macro_rules! serde_round_trip (
|
|
|
|
($var:expr) => ({
|
2019-03-26 16:05:51 +00:00
|
|
|
use serde_json;
|
2015-04-11 01:55:59 +00:00
|
|
|
|
2019-03-26 16:05:51 +00:00
|
|
|
let encoded = serde_json::to_value(&$var).unwrap();
|
|
|
|
let decoded = serde_json::from_value(encoded).unwrap();
|
|
|
|
assert_eq!($var, decoded);
|
2015-04-11 01:55:59 +00:00
|
|
|
})
|
|
|
|
);
|