saphyr-serde/saphyr/tests/quickcheck.rs

22 lines
644 B
Rust
Raw Normal View History

2017-03-12 16:02:18 +00:00
#[macro_use]
extern crate quickcheck;
use quickcheck::TestResult;
2024-04-02 16:49:52 +00:00
use saphyr::{load_from_str, Yaml, YamlEmitter};
2017-03-12 16:02:18 +00:00
quickcheck! {
fn test_check_weird_keys(xs: Vec<String>) -> TestResult {
let mut out_str = String::new();
let input = Yaml::Array(xs.into_iter().map(Yaml::String).collect());
2017-03-12 16:02:18 +00:00
{
let mut emitter = YamlEmitter::new(&mut out_str);
emitter.dump(&input).unwrap();
2017-03-12 16:02:18 +00:00
}
match load_from_str(&out_str) {
Ok(output) => TestResult::from_bool(output.len() == 1 && input == output[0]),
2020-05-27 06:25:59 +00:00
Err(err) => TestResult::error(err.to_string()),
2017-03-12 16:02:18 +00:00
}
}
2017-05-08 18:35:53 +00:00
}