saphyr-serde/saphyr/tests/quickcheck.rs

22 lines
681 B
Rust
Raw Normal View History

2024-02-08 06:12:14 +00:00
extern crate yaml_rust2;
2017-03-12 16:02:18 +00:00
#[macro_use]
extern crate quickcheck;
use quickcheck::TestResult;
2024-02-08 06:12:14 +00:00
use yaml_rust2::{Yaml, YamlEmitter, YamlLoader};
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 YamlLoader::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
}