});
pub fn bless() {
- let test_dirs = [
+ let test_suite_dirs = [
clippy_project_root().join("tests").join("ui"),
clippy_project_root().join("tests").join("ui-toml"),
clippy_project_root().join("tests").join("ui-cargo"),
];
- for test_dir in &test_dirs {
- WalkDir::new(test_dir)
+ for test_suite_dir in &test_suite_dirs {
+ WalkDir::new(test_suite_dir)
.into_iter()
.filter_map(Result::ok)
.filter(|f| f.path().extension() == Some(OsStr::new("rs")))
.for_each(|f| {
- update_reference_file(f.path().with_extension("stdout"));
- update_reference_file(f.path().with_extension("stderr"));
- update_reference_file(f.path().with_extension("fixed"));
+ let test_name = f.path().strip_prefix(test_suite_dir).unwrap();
+
+ update_reference_file(f.path().with_extension("stdout"), test_name.with_extension("stdout"));
+ update_reference_file(f.path().with_extension("stderr"), test_name.with_extension("stderr"));
+ update_reference_file(f.path().with_extension("fixed"), test_name.with_extension("fixed"));
});
}
}
-fn update_reference_file(reference_file_path: PathBuf) {
- let test_output_path = build_dir().join(PathBuf::from(reference_file_path.file_name().unwrap()));
+fn update_reference_file(reference_file_path: PathBuf, test_name: PathBuf) {
+ let test_output_path = build_dir().join(test_name);
let relative_reference_file_path = reference_file_path.strip_prefix(clippy_project_root()).unwrap();
// If compiletest did not write any changes during the test run,