Skip to content

Commit f52622f

Browse files
Merge pull request #14 from ktamas77/master
PHPUnit 9 Support
2 parents f1a69be + 8df6619 commit f52622f

File tree

4 files changed

+34
-35
lines changed

4 files changed

+34
-35
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
/vendor/
22
/composer.lock
3-
coverage
3+
coverage
4+
.idea

.travis.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ sudo: false
33
language: php
44

55
php:
6-
- 7.1
7-
- 7.2
86
- 7.3
97

108
install:

composer.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
"description": "Generate code coverage reports on a live server",
44
"license": "MIT",
55
"require": {
6-
"php": "^7.1",
6+
"php": "^7.3",
77
"webmozart/assert": "^1.2",
8-
"phpunit/php-code-coverage": "^4.0 || ^5.2 || ^6.0 || ^7.0 || ^8.0",
9-
"phpunit/phpunit": "^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
8+
"phpunit/php-code-coverage": "^8.0",
9+
"phpunit/phpunit": "^9.0"
1010
},
1111
"autoload": {
1212
"psr-4": {

src/LiveCodeCoverage/CodeCoverageFactory.php

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
namespace LiveCodeCoverage;
44

5-
use PHPUnit\Util\Configuration;
5+
use PHPUnit\TextUI\Configuration\Configuration;
6+
use PHPUnit\TextUI\Configuration\Loader;
67
use SebastianBergmann\CodeCoverage\CodeCoverage;
78

89
final class CodeCoverageFactory
@@ -15,54 +16,53 @@ public static function createFromPhpUnitConfiguration($phpunitFilePath)
1516
{
1617
$codeCoverage = self::createDefault();
1718

18-
// Accomodate for PHPUnit 5.7
19-
if (!class_exists('PHPUnit\Util\Configuration')) {
20-
class_alias('PHPUnit_Util_Configuration', 'PHPUnit\Util\Configuration');
21-
}
22-
23-
self::configure($codeCoverage, Configuration::getInstance($phpunitFilePath));
19+
$loader = new Loader();
20+
self::configure($codeCoverage, $loader->load($phpunitFilePath));
2421

2522
return $codeCoverage;
2623
}
2724

2825
private static function configure(CodeCoverage $codeCoverage, Configuration $configuration)
2926
{
30-
$filter = $codeCoverage->filter();
31-
$filterConfiguration = $configuration->getFilterConfiguration();
27+
$codeCoverageFilter = $codeCoverage->filter();
28+
$filterConfiguration = $configuration->filter();
3229

3330
// The following code is copied from PHPUnit\TextUI\TestRunner
3431

35-
$codeCoverage->setAddUncoveredFilesFromWhitelist(
36-
$filterConfiguration['whitelist']['addUncoveredFilesFromWhitelist']
37-
);
32+
if ($filterConfiguration->hasNonEmptyWhitelist()) {
33+
$codeCoverage->setAddUncoveredFilesFromWhitelist(
34+
$filterConfiguration->addUncoveredFilesFromWhitelist()
35+
);
3836

39-
$codeCoverage->setProcessUncoveredFilesFromWhitelist(
40-
$filterConfiguration['whitelist']['processUncoveredFilesFromWhitelist']
41-
);
37+
$codeCoverage->setProcessUncoveredFilesFromWhitelist(
38+
$filterConfiguration->processUncoveredFilesFromWhitelist()
39+
);
40+
}
4241

43-
foreach ($filterConfiguration['whitelist']['include']['directory'] as $dir) {
44-
$filter->addDirectoryToWhitelist(
45-
$dir['path'],
46-
$dir['suffix'],
47-
$dir['prefix']
42+
foreach ($filterConfiguration->directories() as $directory) {
43+
$codeCoverageFilter->addDirectoryToWhitelist(
44+
$directory->path(),
45+
$directory->suffix(),
46+
$directory->prefix()
4847
);
4948
}
5049

51-
foreach ($filterConfiguration['whitelist']['include']['file'] as $file) {
52-
$filter->addFileToWhitelist($file);
50+
foreach ($filterConfiguration->files() as $file) {
51+
$codeCoverageFilter->addFileToWhitelist($file->path());
5352
}
5453

55-
foreach ($filterConfiguration['whitelist']['exclude']['directory'] as $dir) {
56-
$filter->removeDirectoryFromWhitelist(
57-
$dir['path'],
58-
$dir['suffix'],
59-
$dir['prefix']
54+
foreach ($filterConfiguration->excludeDirectories() as $directory) {
55+
$codeCoverageFilter->removeDirectoryFromWhitelist(
56+
$directory->path(),
57+
$directory->suffix(),
58+
$directory->prefix()
6059
);
6160
}
6261

63-
foreach ($filterConfiguration['whitelist']['exclude']['file'] as $file) {
64-
$filter->removeFileFromWhitelist($file);
62+
foreach ($filterConfiguration->excludeFiles() as $file) {
63+
$codeCoverageFilter->removeFileFromWhitelist($file->path());
6564
}
65+
6666
}
6767

6868
/**

0 commit comments

Comments
 (0)