Skip to content

Commit

Permalink
Use PHPUnit's FilterMapper
Browse files Browse the repository at this point in the history
  • Loading branch information
matthiasnoback committed Sep 27, 2020
1 parent 43201fc commit 001add5
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 26 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
/composer.lock
coverage
.idea
/.phpunit.result.cache
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,8 @@ $shutDownCodeCoverage();
</phpunit>
```

Any configuration directive that's [available in PHPUnit](https://phpunit.de/manual/current/en/appendixes.configuration.html#appendixes.configuration.whitelisting-files) works for this library too.
Most configuration directives that are [available in PHPUnit](https://phpunit.de/manual/current/en/appendixes.configuration.html#appendixes.configuration.whitelisting-files) work for this library too.
If you notice that something doesn't work, please submit an issue.

If you don't provide a PHPUnit configuration file, no filters will be applied, so you will get a coverage report for all the code in your project, including vendor and test code if applicable.

Expand Down
31 changes: 6 additions & 25 deletions src/LiveCodeCoverage/CodeCoverageFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

namespace LiveCodeCoverage;

use PHPUnit\TextUI\XmlConfiguration\CodeCoverage\FilterMapper;
use PHPUnit\TextUI\XmlConfiguration\Configuration;
use PHPUnit\TextUI\XmlConfiguration\Loader;
use SebastianBergmann\CodeCoverage\CodeCoverage;
Expand All @@ -26,7 +27,6 @@ public static function createFromPhpUnitConfiguration($phpunitFilePath)

private static function configure(CodeCoverage $codeCoverage, Configuration $configuration)
{
$codeCoverageFilter = $codeCoverage->filter();
$codeCoverageConfiguration = $configuration->codeCoverage();

// The following code is copied from PHPUnit\TextUI\TestRunner
Expand All @@ -44,30 +44,11 @@ private static function configure(CodeCoverage $codeCoverage, Configuration $con
}
}

foreach ($codeCoverageConfiguration->directories() as $directory) {
$codeCoverageFilter->includeDirectory(
$directory->path(),
$directory->suffix(),
$directory->prefix()
);
}

foreach ($codeCoverageConfiguration->files() as $file) {
$codeCoverageFilter->includeFile($file->path());
}

foreach ($codeCoverageConfiguration->excludeDirectories() as $directory) {
$codeCoverageFilter->excludeDirectory(
$directory->path(),
$directory->suffix(),
$directory->prefix()
);
}

foreach ($codeCoverageConfiguration->excludeFiles() as $file) {
$codeCoverageFilter->excludeFile($file->path());
}

/*
* `FilterMapper` is not covered by PHPUnit's backward-compatibility promise, but let's use it instead of
* copying it.
*/
(new FilterMapper())->map($codeCoverage->filter(), $configuration->codeCoverage());
}

/**
Expand Down

0 comments on commit 001add5

Please sign in to comment.