diff --git a/src/mutate.rs b/src/mutate.rs index bf7ebdd1..52f371dd 100644 --- a/src/mutate.rs +++ b/src/mutate.rs @@ -191,11 +191,14 @@ impl Mutant { .with_context(|| format!("failed to write mutated code to {path:?}")) } + /// Return a string describing this mutant that's suitable for building a log file name, + /// but can contain slashes. pub fn log_file_name_base(&self) -> String { format!( - "{}_line_{}", - self.source_file.tree_relative_slashes(), - self.span.start.line, + "{filename}_line_{line}_col_{col}", + filename = self.source_file.tree_relative_slashes(), + line = self.span.start.line, + col = self.span.start.column, ) } } diff --git a/tests/cli/main.rs b/tests/cli/main.rs index 4c936f2a..df584ee2 100644 --- a/tests/cli/main.rs +++ b/tests/cli/main.rs @@ -506,7 +506,7 @@ fn small_well_tested_tree_is_clean() { let log_content = fs::read_to_string( tmp_src_dir .path() - .join("mutants.out/log/src__lib.rs_line_5.log"), + .join("mutants.out/log/src__lib.rs_line_5_col_5.log"), ) .unwrap() .replace('\r', ""); diff --git a/tests/cli/snapshots/cli__factorial__log_names.snap b/tests/cli/snapshots/cli__factorial__log_names.snap index a608a2c5..fff4f17b 100644 --- a/tests/cli/snapshots/cli__factorial__log_names.snap +++ b/tests/cli/snapshots/cli__factorial__log_names.snap @@ -4,7 +4,7 @@ expression: "&names" --- [ "baseline.log", - "src__bin__factorial.rs_line_2.log", - "src__bin__factorial.rs_line_8.log", - "src__bin__factorial.rs_line_8_001.log", + "src__bin__factorial.rs_line_2_col_5.log", + "src__bin__factorial.rs_line_8_col_5.log", + "src__bin__factorial.rs_line_8_col_5_001.log", ]