compiletest: Filter away test annotations from UI test output

This commit is contained in:
Vadim Petrochenkov 2019-03-09 14:29:55 +03:00
parent de5c3c4b07
commit 2060d49c39

View file

@ -3083,6 +3083,12 @@ impl<'test> TestCx<'test> {
.replace("\\", "/") // normalize for paths on windows
.replace("\r\n", "\n") // normalize for linebreaks on windows
.replace("\t", "\\t"); // makes tabs visible
// Remove test annotations like `//~ ERROR text` from the output,
// since they duplicate actual errors and make the output hard to read.
normalized = Regex::new("\\s*//~.*").unwrap()
.replace_all(&normalized, "").into_owned();
for rule in custom_rules {
let re = Regex::new(&rule.0).expect("bad regex in custom normalization rule");
normalized = re.replace_all(&normalized, &rule.1[..]).into_owned();