Skip to content

Commit 3d9917d

Browse files
authored
Merge pull request #1418 from hcoles/bug/duplicate_build_messages
filter build messages with the same content
2 parents 2d75110 + 66c59e9 commit 3d9917d

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

pitest-entry/src/main/java/org/pitest/mutationtest/verify/CompoundBuildVerifierFactory.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ public BuildVerifier create(BuildVerifierArguments args) {
1616
List<BuildMessage> issues = verifiers.stream()
1717
.map(f -> f.create(args))
1818
.flatMap(v -> v.verifyBuild().stream())
19+
.distinct()
1920
.collect(Collectors.toList());
2021

2122
return new BuildVerifier() {

pitest-entry/src/test/java/org/pitest/mutationtest/verify/CompoundBuildVerifierFactoryTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,15 @@ public void returnsResultsFromChildren() {
2525
assertThat(underTest.create(new BuildVerifierArguments(aCodeSource(), new ReportOptions())).verifyBuild())
2626
.containsExactly(buildMessage("one"), buildMessage("two"), buildMessage("three"));
2727
}
28+
@Test
29+
public void removesDuplicateMessage() {
30+
CompoundBuildVerifierFactory underTest = new CompoundBuildVerifierFactory(asList(
31+
factoryFor(buildVerifier(asList("one", "one"))),
32+
factoryFor(buildVerifier(asList("two", "two")))));
33+
34+
assertThat(underTest.create(new BuildVerifierArguments(aCodeSource(), new ReportOptions())).verifyBuild())
35+
.containsExactly(buildMessage("one"), buildMessage("two"));
36+
}
2837

2938
private BuildVerifierFactory factoryFor(BuildVerifier bv) {
3039
BuildVerifierFactory vs = Mockito.mock(BuildVerifierFactory.class);

0 commit comments

Comments
 (0)