private CoverageResult createCoverageResult(final SafeDataInputStream is, final Description d, Collection<BlockLocation> visitedBlocks) { final boolean isGreen = is.readBoolean(); final int executionTime = is.readInt(); final CoverageResult cr = new CoverageResult(d, executionTime, isGreen, visitedBlocks); return cr; }
public void calculateClassCoverage(final CoverageResult cr) { checkForFailedTest(cr); final TestInfo ti = this.createTestInfo(cr.getTestUnitDescription(), cr.getExecutionTime(), cr.getNumberOfCoveredBlocks()); for (final BlockLocation each : cr.getCoverage()) { addTestsToBlockMap(ti, each); } }
private void checkForFailedTest(final CoverageResult cr) { if (!cr.isGreenTest()) { recordTestFailure(cr.getTestUnitDescription()); LOG.severe(cr.getTestUnitDescription() + " did not pass without mutation."); } }
private Predicate<CoverageResult> coverage(final String testName, final int numberOfBlocks) { return a -> a.getTestUnitDescription().getName().startsWith(testName) && (a.getNumberOfCoveredBlocks() == numberOfBlocks); }
@Test public void shouldCalculateCorrectNumberOfCoveredBlocksWhenNoneCovered() { this.testee = new CoverageResult(null, 0, true, Collections.<BlockLocation> emptyList()); assertEquals(0, this.testee.getNumberOfCoveredBlocks()); }
@Override public boolean test(final CoverageResult a) { return a.getTestUnitDescription().getName().startsWith(testName) && (FCollection.contains(a.getCoverage(), hasBlock(block))); }
private Predicate<CoverageResult> failingTest() { return a -> !a.isGreenTest(); }
private Predicate<CoverageResult> coverageFor(final BlockLocation location) { return a -> a.getCoverage().contains(location); }
@Test public void shouldCalculateCorrectNumberOfCoveredBlocksWhenOneClassHasCoverage() { this.testee = new CoverageResult(null, 0, true, Collections.singletonList(makeCoverage("foo", 1))); assertEquals(1, this.testee.getNumberOfCoveredBlocks()); }
@Override public void apply(final CoverageResult cr) { if (cr.isGreenTest() || !coverageOptions.getPitConfig().skipFailingTests()) { coverage.calculateClassCoverage(cr); } if (DefaultCoverageGenerator.this.showProgress) { System.out.printf("%s", this.spinner[this.i % this.spinner.length]); } this.i++; }
@Test public void shouldRecordSomeCoverage() throws IOException, InterruptedException, ExecutionException { final List<CoverageResult> coverage = runCoverageForTest(TestsForMultiBlockCoverage.class); assertFalse(coverage.iterator().next().getCoverage().isEmpty()); }
@Test public void shouldCalculateCorrectNumberOfCoveredBlocksWhenMultiplesClassesHaveCoverage() { this.testee = new CoverageResult(null, 0, true, Arrays.asList( makeCoverage("foo", 42), makeCoverage("bar", 42))); assertEquals(2, this.testee.getNumberOfCoveredBlocks()); }
private CoverageResult makeCoverageResult(final String clazz, final Description desc, final int time, final int block, final boolean testPassed) { return new CoverageResult(desc, time, testPassed, makeCoverage(clazz, block)); }
@Test public void shouldReportWhenTestPasses() { recordTestCoverage(0, 0, 0, true); assertEquals(true, this.result.isGreenTest()); }
@Override public boolean test(final CoverageResult a) { return FCollection.contains(a.getCoverage(), resultFor(class1)); }
private static Generator<CoverageResultBuilder, CoverageResult> CoverageResultSeed() { return b -> new CoverageResult(b._TestUnitDescription(), b._ExecutionTime(), b._GreenSuite(), b._VisitedBlocks()); }
@Test public void shouldReportWhenTestFails() { recordTestCoverage(0, 0, 0, false); assertEquals(false, this.result.isGreenTest()); }