Skip to content

Commit c4b1e36

Browse files
authored
Merge pull request #10794 from griggt/cb-failure-summary
2 parents 7d715fe + 780c18c commit c4b1e36

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package dotty.communitybuild;
2+
3+
import java.util.List;
4+
5+
import org.junit.runner.Description;
6+
import org.junit.runner.Result;
7+
import org.junit.runner.notification.Failure;
8+
import org.junit.runner.notification.RunListener;
9+
10+
public class FailureSummarizer extends RunListener {
11+
@Override
12+
public void testRunFinished(Result result) throws Exception {
13+
super.testRunFinished(result);
14+
if (result.getFailureCount() > 0) {
15+
Thread.sleep(500); // pause to give sbt log buffers some time to flush
16+
summarizeFailures(result.getFailures());
17+
}
18+
}
19+
20+
private void summarizeFailures(List<Failure> failures) {
21+
err("********************************************************************************");
22+
err("Failed projects:");
23+
for (Failure f : failures) {
24+
err(" - " + getProjectName(f.getDescription()));
25+
}
26+
err("********************************************************************************");
27+
}
28+
29+
private String getProjectName(Description desc) {
30+
return desc.getClassName() + "." + desc.getMethodName();
31+
}
32+
33+
private void err(String msg) {
34+
System.err.println(msg);
35+
}
36+
}

project/Build.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1360,6 +1360,7 @@ object Build {
13601360
testOptions in Test += Tests.Argument(
13611361
TestFrameworks.JUnit,
13621362
"--include-categories=dotty.communitybuild.TestCategory",
1363+
"--run-listener=dotty.communitybuild.FailureSummarizer",
13631364
),
13641365
Compile/run := (Compile/run).dependsOn(prepareCommunityBuild).evaluated,
13651366
(Test / testOnly) := ((Test / testOnly) dependsOn prepareCommunityBuild).evaluated,

0 commit comments

Comments
 (0)