use std::fs;
use std::io::Write;
use std::path::Path;
pub static SRCTESTS_DIR: &str = "tests/files";
pub static SRC_EXT: &str = "vcg";
fn gentests(testdir: &str, ext: &str, target: &Path) {
let mut f = fs::File::create(target).unwrap();
let dir = fs::read_dir(testdir).unwrap();
for e in dir {
let p = e.as_ref().unwrap().path();
let n = p.file_stem().unwrap().to_str().unwrap();
if p.extension().unwrap() == ext {
writeln!(f).unwrap();
writeln!(f,"#[test]").unwrap();
writeln!(f,"fn test_{n}() {{ check(\"{n}.{ext}\"); }}").unwrap();
}
}
}
fn main() {
let out_dir = std::env::var("OUT_DIR").unwrap();
let test_file = std::path::Path::new(&out_dir).join("srcfile_tests.rs");
gentests(SRCTESTS_DIR,SRC_EXT,&test_file);
}