saphyr-serde/saphyr/tests/quickcheck.rs
2018-09-15 09:49:08 -07:00

21 lines
623 B
Rust

extern crate yaml_rust;
#[macro_use]
extern crate quickcheck;
use quickcheck::TestResult;
use std::error::Error;
use yaml_rust::{Yaml, YamlEmitter, YamlLoader};
quickcheck! {
fn test_check_weird_keys(xs: Vec<String>) -> TestResult {
let mut out_str = String::new();
{
let mut emitter = YamlEmitter::new(&mut out_str);
emitter.dump(&Yaml::Array(xs.into_iter().map(Yaml::String).collect())).unwrap();
}
if let Err(err) = YamlLoader::load_from_str(&out_str) {
return TestResult::error(err.description());
}
TestResult::passed()
}
}