@Test public void interpretResults() throws Exception { final Path expectedExitCode = Paths.get("output"); final Path expectedOutput = Paths.get("output"); final Path expectedResults = Paths.get("results"); FakeCxxTest cxxTest = new FakeCxxTest() { @Override public Path getPathToOutput() { return Paths.get("output"); } @Override protected Path getPathToTestExitCode() { return expectedExitCode; } @Override protected Path getPathToTestOutput() { return expectedOutput; } @Override protected Path getPathToTestResults() { return expectedResults; } @Override protected ImmutableList<TestResultSummary> parseResults( ExecutionContext context, Path exitCode, Path output, Path results) throws Exception { assertEquals(expectedExitCode, exitCode); assertEquals(expectedOutput, output); assertEquals(expectedResults, results); return ImmutableList.of(); } }; ExecutionContext executionContext = TestExecutionContext.newInstance(); Callable<TestResults> result = cxxTest.interpretTestResults( executionContext, /* isUsingTestSelectors */ false, /* isDryRun */ false); result.call(); }