extern crate parser_c;
extern crate walkdir;
use parser_c::parse;
use std::fs::File;
use walkdir::WalkDir;
use std::io::prelude::*;
#[test]
fn eval_smoke() {
for item in WalkDir::new("tests/smoke") {
if let Ok(entry) = item {
if entry.path().display().to_string().ends_with(".c") {
let mut input = String::new();
File::open(entry.path()).unwrap().read_to_string(&mut input).unwrap();
match parse(&input, &entry.path().display().to_string()) {
Err(err) => {
panic!("error: {:?}", err);
}
Ok(_) => {
println!("smoke test passed: {}", entry.path().display());
}
}
}
}
}
}