1 #![allow(clippy::type_complexity)] 2 3 mod bin; 4 #[path = "../src/bin/run-parser-test-suite.rs"] 5 #[allow(dead_code)] 6 mod run_parser_test_suite; 7 8 use std::fs; 9 use std::path::Path; 10 test(id: &str)11fn test(id: &str) { 12 let dir = Path::new("tests") 13 .join("data") 14 .join("yaml-test-suite") 15 .join(id); 16 17 let output = bin::run( 18 env!("CARGO_BIN_EXE_run-parser-test-suite"), 19 run_parser_test_suite::unsafe_main, 20 &dir.join("in.yaml"), 21 ); 22 23 let stdout = String::from_utf8_lossy(&output.stdout); 24 let stderr = String::from_utf8_lossy(&output.stderr); 25 eprint!("{}", stderr); 26 27 let expected = fs::read_to_string(dir.join("test.event")).unwrap(); 28 pretty_assertions::assert_str_eq!(expected, stdout); 29 assert!(output.success); 30 } 31 32 unsafe_libyaml_test_suite::test_parser!(); 33