Skip to content

Commit

Permalink
[misc] Hide output of succeeding tests (#512)
Browse files Browse the repository at this point in the history
  • Loading branch information
slarse committed Apr 8, 2024
1 parent 954475a commit 2d7254b
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 1 deletion.
9 changes: 8 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,16 @@
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.9.0</version>
<version>5.10.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-launcher</artifactId>
<version>1.10.2</version>
<scope>test</scope>
</dependency>


<!-- logging -->
<dependency>
Expand Down
38 changes: 38 additions & 0 deletions src/test/java/se/kth/spork/TestOutputHandler.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
package se.kth.spork;

import java.io.ByteArrayOutputStream;
import java.io.PrintStream;
import org.junit.platform.engine.TestExecutionResult;
import org.junit.platform.launcher.TestExecutionListener;
import org.junit.platform.launcher.TestIdentifier;

public class TestOutputHandler implements TestExecutionListener {
private final PrintStream stdout = System.out;
private final PrintStream stderr = System.err;

private final ByteArrayOutputStream capturedStdout = new ByteArrayOutputStream();
private final ByteArrayOutputStream capturedStderr = new ByteArrayOutputStream();

@Override
public void executionStarted(TestIdentifier testIdentifier) {
System.setOut(new PrintStream(capturedStdout));
System.setErr(new PrintStream(capturedStderr));
}

@Override
public void executionFinished(
TestIdentifier testIdentifier, TestExecutionResult testExecutionResult) {
System.setOut(stdout);
System.setErr(stderr);
if (testExecutionResult.getStatus().equals(TestExecutionResult.Status.FAILED)) {
System.out.printf(
"### OUTPUT FROM %s (%s) ###",
testIdentifier.getLegacyReportingName(), testIdentifier.getDisplayName());
System.out.println(capturedStdout.toString());
System.out.println(capturedStderr.toString());
}

capturedStdout.reset();
capturedStderr.reset();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
se.kth.spork.TestOutputHandler

0 comments on commit 2d7254b

Please sign in to comment.