diff --git a/.github/lint-xml-configuration/lint-xml-configuration.sh b/.github/lint-xml-configuration/lint-xml-configuration.sh
index f96380aa..6756bd64 100644
--- a/.github/lint-xml-configuration/lint-xml-configuration.sh
+++ b/.github/lint-xml-configuration/lint-xml-configuration.sh
@@ -2,7 +2,9 @@
set -ex
-xmllint --noout --schema vendor/phpunit/phpunit/phpunit.xsd phpunit.xml.dist
+phpunitXsd="vendor/phpunit/phpunit/phpunit.xsd"
+
+xmllint --noout --schema "$phpunitXsd" phpunit.xml.dist
xmllint --noout --schema vendor/squizlabs/php_codesniffer/phpcs.xsd phpcs.xml.dist
xmllint --noout --schema vendor/vimeo/psalm/config.xsd psalm.xml.dist
-find test/ -name "phpunit*.xml*" -not -name "phpunit-files-dirs-mix-nested.xml" -print0 | xargs -0 xmllint --noout --schema vendor/phpunit/phpunit/phpunit.xsd
\ No newline at end of file
+find test/ -name "phpunit*.xml*" -not -name "phpunit-files-dirs-mix-nested.xml" -print0 | xargs -0 xmllint --noout --schema "$phpunitXsd"
\ No newline at end of file
diff --git a/README.md b/README.md
index d14c4e94..0e754c23 100644
--- a/README.md
+++ b/README.md
@@ -137,6 +137,14 @@ The corresponding logfiles are placed in your `sys_get_temp_dir()`.
See [Logging docs](docs/logging.md) for further information.
### Generating code coverage
+
+Beginning from PHPUnit 9.3.4, it is strongly advised to warm the coverage cache before running any code-coverage
+analysis, see [PHPUnit Changlog @ 9.3.4](https://github.com/sebastianbergmann/phpunit/blob/master/ChangeLog-9.3.md#934---2020-08-10):
+
+```
+vendor/bin/phpunit --warm-coverage-cache
+```
+
Examples assume your tests are located under `./test/unit`.
````
vendor/bin/paratest -p 1 --coverage-text test/unit
diff --git a/composer.json b/composer.json
index 33196ed5..cda417e3 100644
--- a/composer.json
+++ b/composer.json
@@ -27,18 +27,18 @@
"ext-reflection": "*",
"ext-simplexml": "*",
"brianium/habitat": "^1.0",
- "phpunit/php-code-coverage": "^8.0",
+ "phpunit/php-code-coverage": "^9.1.2",
"phpunit/php-timer": "^5.0",
- "phpunit/phpunit": "^9.2",
- "symfony/console": "^4.4 || ^5.0",
- "symfony/process": "^4.4 || ^5.0"
+ "phpunit/phpunit": "^9.3.5",
+ "symfony/console": "^4.4 || ^5.1",
+ "symfony/process": "^4.4 || ^5.1"
},
"require-dev": {
- "doctrine/coding-standard": "^8.1",
- "phpstan/phpstan": "^0.12.33",
- "phpstan/phpstan-phpunit": "^0.12.12",
- "squizlabs/php_codesniffer": "^3.5",
- "vimeo/psalm": "^3.12"
+ "doctrine/coding-standard": "^8.1.0",
+ "phpstan/phpstan": "^0.12.37",
+ "phpstan/phpstan-phpunit": "^0.12.16",
+ "squizlabs/php_codesniffer": "^3.5.6",
+ "vimeo/psalm": "^3.12.2"
},
"autoload": {
"psr-4": {
diff --git a/phpstan.neon.dist b/phpstan.neon.dist
index 6bf226b5..773e1ffb 100644
--- a/phpstan.neon.dist
+++ b/phpstan.neon.dist
@@ -14,12 +14,6 @@ parameters:
excludes_analyse:
- test/fixtures/*
ignoreErrors:
- # @see https://github.com/phpstan/phpstan-src/pull/281
- -
- message: "#^Strict comparison using \\=\\=\\= between int and false will always evaluate to false\\.$#"
- count: 1
- path: src/Runners/PHPUnit/SqliteRunner.php
-
# Known fixtures
-
message: "#^Property ParaTest\\\\Runners\\\\PHPUnit\\\\ExecutableTest\\:\\:\\$process type has no value type specified in iterable type Symfony\\\\Component\\\\Process\\\\Process\\.$#"
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 907340cf..de89de35 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -1,33 +1,34 @@
-
-
-
- ./test/Unit/
-
-
- ./test/Functional/
-
-
-
-
-
- src
-
-
-
-
-
-
-
-
-
+
+
+ ./test/Unit/
+
+
+ ./test/Functional/
+
+
+
+
+ src
+
+
+
+
+
+
+
+
diff --git a/psalm.xml.dist b/psalm.xml.dist
index 342c860b..89cb7ff9 100644
--- a/psalm.xml.dist
+++ b/psalm.xml.dist
@@ -13,4 +13,9 @@
+
+
+
+
+
diff --git a/src/Coverage/CoverageMerger.php b/src/Coverage/CoverageMerger.php
index e4e08b95..c67ae615 100644
--- a/src/Coverage/CoverageMerger.php
+++ b/src/Coverage/CoverageMerger.php
@@ -6,6 +6,7 @@
use RuntimeException;
use SebastianBergmann\CodeCoverage\CodeCoverage;
+use SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData;
use SplFileObject;
use function array_map;
@@ -118,7 +119,8 @@ private function limitCoverageTests(CodeCoverage $coverage): void
return;
}
- $coverage->setData(array_map(
+ $data = $coverage->getData(true);
+ $newData = array_map(
function (array $lines) {
return array_map(function ($value) {
if (! is_array($value)) {
@@ -128,7 +130,11 @@ function (array $lines) {
return array_slice($value, 0, $this->test_limit);
}, $lines);
},
- $coverage->getData($raw = true)
- ));
+ $data->lineCoverage(),
+ );
+ $processedData = new ProcessedCodeCoverageData();
+ $processedData->setLineCoverage($newData);
+
+ $coverage->setData($processedData);
}
}
diff --git a/src/Runners/PHPUnit/Options.php b/src/Runners/PHPUnit/Options.php
index aabde050..26e34fc6 100644
--- a/src/Runners/PHPUnit/Options.php
+++ b/src/Runners/PHPUnit/Options.php
@@ -205,7 +205,7 @@ public function __construct(array $opts = [])
$this->maxBatchSize = (int) $opts['max-batch-size'];
$this->filter = $opts['filter'];
$this->parallelSuite = $opts['parallel-suite'];
- $this->passthru = $this->parsePassthru($opts['passthru-php'] ?? null);
+ $this->passthru = $this->parsePassthru($opts['passthru'] ?? null);
$this->passthruPhp = $this->parsePassthru($opts['passthru-php'] ?? null);
$this->verbose = $opts['verbose'] ?? 0;
$this->coverageTestLimit = $opts['coverage-test-limit'] ?? 0;
diff --git a/src/Runners/PHPUnit/Worker/BaseWorker.php b/src/Runners/PHPUnit/Worker/BaseWorker.php
index 30ead645..2fc8a245 100644
--- a/src/Runners/PHPUnit/Worker/BaseWorker.php
+++ b/src/Runners/PHPUnit/Worker/BaseWorker.php
@@ -157,7 +157,7 @@ public function stop(): void
}
/**
- * @param array $status
+ * @param array $status
*/
protected function setExitCode(array $status): void
{
diff --git a/test/Functional/Coverage/CoverageReporterTest.php b/test/Functional/Coverage/CoverageReporterTest.php
index 490eb945..ccd6ca5c 100644
--- a/test/Functional/Coverage/CoverageReporterTest.php
+++ b/test/Functional/Coverage/CoverageReporterTest.php
@@ -107,7 +107,7 @@ public function testGenerateClover(array $coverageFiles): void
static::assertFileExists($target);
- $reportXml = Xml::loadFile($target);
+ $reportXml = (new Xml\Loader())->loadFile($target);
static::assertInstanceOf('DomDocument', $reportXml, 'Incorrect clover report xml was generated');
}
@@ -133,7 +133,7 @@ public function testGenerateCrap4J(array $coverageFiles): void
static::assertFileExists($target);
- $reportXml = Xml::loadFile($target);
+ $reportXml = (new Xml\Loader())->loadFile($target);
static::assertInstanceOf('DomDocument', $reportXml, 'Incorrect crap4j report xml was generated');
static::assertEquals('crap_result', $reportXml->documentElement->tagName);
}
diff --git a/test/Unit/Coverage/CoverageMergerTest.php b/test/Unit/Coverage/CoverageMergerTest.php
index 0c63fe63..9e9b3253 100644
--- a/test/Unit/Coverage/CoverageMergerTest.php
+++ b/test/Unit/Coverage/CoverageMergerTest.php
@@ -7,7 +7,9 @@
use ParaTest\Coverage\CoverageMerger;
use ParaTest\Tests\TestBase;
use SebastianBergmann\CodeCoverage\CodeCoverage;
+use SebastianBergmann\CodeCoverage\Driver\Driver;
use SebastianBergmann\CodeCoverage\Filter;
+use SebastianBergmann\CodeCoverage\RawCodeCoverageData;
use function assert;
@@ -34,20 +36,24 @@ public function testSimpleMerge(): void
$secondFileFirstLine = 53;
$filter = new Filter();
- $filter->addFilesToWhitelist([$firstFile, $secondFile]);
- $coverage1 = new CodeCoverage(null, $filter);
+ $filter->includeFiles([$firstFile, $secondFile]);
+
+ $data = RawCodeCoverageData::fromXdebugWithoutPathCoverage([
+ $firstFile => [$firstFileFirstLine => 1],
+ $secondFile => [$secondFileFirstLine => 1],
+ ]);
+ $coverage1 = new CodeCoverage(Driver::forLineCoverage($filter), $filter);
$coverage1->append(
- [
- $firstFile => [$firstFileFirstLine => 1],
- $secondFile => [$secondFileFirstLine => 1],
- ],
+ $data,
'Test1'
);
- $coverage2 = new CodeCoverage(null, $filter);
+
+ $data = RawCodeCoverageData::fromXdebugWithoutPathCoverage([
+ $firstFile => [$firstFileFirstLine => 1, 1 + $firstFileFirstLine => 1],
+ ]);
+ $coverage2 = new CodeCoverage(Driver::forLineCoverage($filter), $filter);
$coverage2->append(
- [
- $firstFile => [$firstFileFirstLine => 1, 1 + $firstFileFirstLine => 1],
- ],
+ $data,
'Test2'
);
@@ -60,7 +66,7 @@ public function testSimpleMerge(): void
$this->assertInstanceOf(CodeCoverage::class, $coverage);
- $data = $coverage->getData();
+ $data = $coverage->getData()->lineCoverage();
$this->assertCount(2, $data[$firstFile][$firstFileFirstLine]);
$this->assertEquals('Test1', $data[$firstFile][$firstFileFirstLine][0]);
@@ -86,20 +92,24 @@ public function testSimpleMergeLimited(): void
$secondFileFirstLine = 53;
$filter = new Filter();
- $filter->addFilesToWhitelist([$firstFile, $secondFile]);
- $coverage1 = new CodeCoverage(null, $filter);
+ $filter->includeFiles([$firstFile, $secondFile]);
+
+ $data = RawCodeCoverageData::fromXdebugWithoutPathCoverage([
+ $firstFile => [$firstFileFirstLine => 1],
+ $secondFile => [$secondFileFirstLine => 1],
+ ]);
+ $coverage1 = new CodeCoverage(Driver::forLineCoverage($filter), $filter);
$coverage1->append(
- [
- $firstFile => [$firstFileFirstLine => 1],
- $secondFile => [$secondFileFirstLine => 1],
- ],
+ $data,
'Test1'
);
- $coverage2 = new CodeCoverage(null, $filter);
+
+ $data = RawCodeCoverageData::fromXdebugWithoutPathCoverage([
+ $firstFile => [$firstFileFirstLine => 1, 1 + $firstFileFirstLine => 1],
+ ]);
+ $coverage2 = new CodeCoverage(Driver::forLineCoverage($filter), $filter);
$coverage2->append(
- [
- $firstFile => [$firstFileFirstLine => 1, 1 + $firstFileFirstLine => 1],
- ],
+ $data,
'Test2'
);
@@ -111,7 +121,7 @@ public function testSimpleMergeLimited(): void
assert($coverage instanceof CodeCoverage);
$this->assertInstanceOf(CodeCoverage::class, $coverage);
- $data = $coverage->getData();
+ $data = $coverage->getData()->lineCoverage();
$this->assertCount(1, $data[$firstFile][$firstFileFirstLine]);
$this->assertCount(1, $data[$secondFile][$secondFileFirstLine]);
diff --git a/test/fixtures/coverage-tests/result_printer_test-windows.cov b/test/fixtures/coverage-tests/result_printer_test-windows.cov
index 668ec52f..69888ab5 100644
--- a/test/fixtures/coverage-tests/result_printer_test-windows.cov
+++ b/test/fixtures/coverage-tests/result_printer_test-windows.cov
@@ -1,6 +1,43 @@
setData(array (
+
+$filter = new \SebastianBergmann\CodeCoverage\Filter();
+$filter->includeFiles(array (
+ 'C:\\paratest\\src\\ParaTest\\Console\\Commands\\ParaTestCommand.php',
+ 'C:\\paratest\\src\\ParaTest\\Console\\ParaTestApplication.php',
+ 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\PHPUnit.php',
+ 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\Tester.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageMerger.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporter.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterInterface.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterLegacy.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Reader.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestCase.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestSuite.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Writer.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\LogInterpreter.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\MetaProvider.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\NoClassInFileException.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedClass.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedFunction.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedObject.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\Parser.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\BaseRunner.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Configuration.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ExecutableTest.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Options.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ResultPrinter.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Runner.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Suite.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuiteLoader.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuitePath.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestFileLoader.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestMethod.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Worker.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\WrapperRunner.php',
+));
+
+$coverage = new \SebastianBergmann\CodeCoverage\CodeCoverage(new \SebastianBergmann\CodeCoverage\Driver\PcovDriver($filter), $filter);
+$data = array (
'C:\\paratest\\src\\ParaTest\\Console\\ParaTestApplication.php' =>
array (
18 =>
@@ -5752,7 +5789,14 @@ $coverage->setData(array (
),
176 => NULL,
),
-));
+);
+if (class_exists(\SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData::class)) {
+ $processedData = new \SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData();
+ $processedData->setLineCoverage($data);
+
+ $data = $processedData;
+}
+$coverage->setData($data);
$coverage->setTests(array (
'UNCOVERED_FILES_FROM_WHITELIST' =>
array (
@@ -5861,40 +5905,4 @@ $coverage->setTests(array (
),
));
-$filter = $coverage->filter();
-$filter->setWhitelistedFiles(array (
- 'C:\\paratest\\src\\ParaTest\\Console\\Commands\\ParaTestCommand.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Console\\ParaTestApplication.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\PHPUnit.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\Tester.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageMerger.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporter.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterInterface.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterLegacy.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Reader.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestCase.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestSuite.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Writer.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\LogInterpreter.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\MetaProvider.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\NoClassInFileException.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedClass.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedFunction.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedObject.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\Parser.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\BaseRunner.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Configuration.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ExecutableTest.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Options.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ResultPrinter.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Runner.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Suite.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuiteLoader.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuitePath.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestFileLoader.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestMethod.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Worker.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\WrapperRunner.php' => true,
-));
-
return $coverage;
\ No newline at end of file
diff --git a/test/fixtures/coverage-tests/result_printer_test.cov b/test/fixtures/coverage-tests/result_printer_test.cov
index d4aa96dd..bfabbe3f 100644
--- a/test/fixtures/coverage-tests/result_printer_test.cov
+++ b/test/fixtures/coverage-tests/result_printer_test.cov
@@ -1,6 +1,43 @@
setData(array (
+
+$filter = new \SebastianBergmann\CodeCoverage\Filter();
+$filter->includeFiles(array (
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/Commands/ParaTestCommand.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/ParaTestApplication.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/PHPUnit.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/Tester.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageMerger.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporter.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterInterface.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterLegacy.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Reader.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestCase.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestSuite.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Writer.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/LogInterpreter.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/MetaProvider.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/NoClassInFileException.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedClass.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedFunction.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedObject.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/Parser.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/BaseRunner.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Configuration.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ExecutableTest.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Options.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ResultPrinter.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Runner.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Suite.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuiteLoader.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuitePath.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestFileLoader.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestMethod.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Worker.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/WrapperRunner.php',
+));
+
+$coverage = new \SebastianBergmann\CodeCoverage\CodeCoverage(new \SebastianBergmann\CodeCoverage\Driver\PcovDriver($filter), $filter);
+$data = array (
'/home/munkie/Projects/paratest/src/ParaTest/Console/ParaTestApplication.php' =>
array (
18 =>
@@ -5752,7 +5789,14 @@ $coverage->setData(array (
),
176 => NULL,
),
-));
+);
+if (class_exists(\SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData::class)) {
+ $processedData = new \SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData();
+ $processedData->setLineCoverage($data);
+
+ $data = $processedData;
+}
+$coverage->setData($data);
$coverage->setTests(array (
'UNCOVERED_FILES_FROM_WHITELIST' =>
array (
@@ -5861,40 +5905,4 @@ $coverage->setTests(array (
),
));
-$filter = $coverage->filter();
-$filter->setWhitelistedFiles(array (
- '/home/munkie/Projects/paratest/src/ParaTest/Console/Commands/ParaTestCommand.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Console/ParaTestApplication.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/PHPUnit.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/Tester.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageMerger.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporter.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterInterface.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterLegacy.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Reader.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestCase.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestSuite.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Writer.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/LogInterpreter.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/MetaProvider.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/NoClassInFileException.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedClass.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedFunction.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedObject.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/Parser.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/BaseRunner.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Configuration.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ExecutableTest.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Options.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ResultPrinter.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Runner.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Suite.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuiteLoader.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuitePath.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestFileLoader.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestMethod.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Worker.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/WrapperRunner.php' => true,
-));
-
return $coverage;
\ No newline at end of file
diff --git a/test/fixtures/coverage-tests/runner_test-windows.cov b/test/fixtures/coverage-tests/runner_test-windows.cov
index 2c82e643..5f9b8883 100644
--- a/test/fixtures/coverage-tests/runner_test-windows.cov
+++ b/test/fixtures/coverage-tests/runner_test-windows.cov
@@ -1,6 +1,42 @@
setData(array (
+
+$filter = new \SebastianBergmann\CodeCoverage\Filter();
+$filter->includeFiles(array (
+ 'C:\\paratest\\src\\ParaTest\\Console\\Commands\\ParaTestCommand.php',
+ 'C:\\paratest\\src\\ParaTest\\Console\\ParaTestApplication.php',
+ 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\PHPUnit.php',
+ 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\Tester.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageMerger.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporter.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterInterface.php',
+ 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterLegacy.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Reader.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestCase.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestSuite.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Writer.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\LogInterpreter.php',
+ 'C:\\paratest\\src\\ParaTest\\Logging\\MetaProvider.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\NoClassInFileException.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedClass.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedFunction.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedObject.php',
+ 'C:\\paratest\\src\\ParaTest\\Parser\\Parser.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\BaseRunner.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Configuration.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ExecutableTest.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Options.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ResultPrinter.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Runner.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Suite.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuiteLoader.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuitePath.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestFileLoader.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestMethod.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Worker.php',
+ 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\WrapperRunner.php',
+));
+$coverage = new \SebastianBergmann\CodeCoverage\CodeCoverage(new \SebastianBergmann\CodeCoverage\Driver\PcovDriver($filter), $filter);
+$data = array (
'C:\\paratest\\src\\ParaTest\\Console\\ParaTestApplication.php' =>
array (
18 =>
@@ -3786,7 +3822,14 @@ $coverage->setData(array (
),
176 => NULL,
),
-));
+);
+if (class_exists(\SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData::class)) {
+ $processedData = new \SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData();
+ $processedData->setLineCoverage($data);
+
+ $data = $processedData;
+}
+$coverage->setData($data);
$coverage->setTests(array (
'UNCOVERED_FILES_FROM_WHITELIST' =>
array (
@@ -3825,40 +3868,4 @@ $coverage->setTests(array (
),
));
-$filter = $coverage->filter();
-$filter->setWhitelistedFiles(array (
- 'C:\\paratest\\src\\ParaTest\\Console\\Commands\\ParaTestCommand.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Console\\ParaTestApplication.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\PHPUnit.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Console\\Testers\\Tester.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageMerger.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporter.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterInterface.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Coverage\\CoverageReporterLegacy.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Reader.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestCase.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\TestSuite.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\JUnit\\Writer.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\LogInterpreter.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Logging\\MetaProvider.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\NoClassInFileException.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedClass.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedFunction.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\ParsedObject.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Parser\\Parser.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\BaseRunner.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Configuration.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ExecutableTest.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Options.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\ResultPrinter.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Runner.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Suite.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuiteLoader.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\SuitePath.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestFileLoader.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\TestMethod.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\Worker.php' => true,
- 'C:\\paratest\\src\\ParaTest\\Runners\\PHPUnit\\WrapperRunner.php' => true,
-));
-
return $coverage;
\ No newline at end of file
diff --git a/test/fixtures/coverage-tests/runner_test.cov b/test/fixtures/coverage-tests/runner_test.cov
index 9fba364e..f8adb964 100644
--- a/test/fixtures/coverage-tests/runner_test.cov
+++ b/test/fixtures/coverage-tests/runner_test.cov
@@ -1,6 +1,43 @@
setData(array (
+
+$filter = new \SebastianBergmann\CodeCoverage\Filter();
+$filter->includeFiles(array (
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/Commands/ParaTestCommand.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/ParaTestApplication.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/PHPUnit.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/Tester.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageMerger.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporter.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterInterface.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterLegacy.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Reader.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestCase.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestSuite.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Writer.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/LogInterpreter.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Logging/MetaProvider.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/NoClassInFileException.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedClass.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedFunction.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedObject.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Parser/Parser.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/BaseRunner.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Configuration.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ExecutableTest.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Options.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ResultPrinter.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Runner.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Suite.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuiteLoader.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuitePath.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestFileLoader.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestMethod.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Worker.php',
+ '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/WrapperRunner.php',
+));
+
+$coverage = new \SebastianBergmann\CodeCoverage\CodeCoverage(new \SebastianBergmann\CodeCoverage\Driver\PcovDriver($filter), $filter);
+$data = array (
'/home/munkie/Projects/paratest/src/ParaTest/Console/ParaTestApplication.php' =>
array (
18 =>
@@ -3786,7 +3823,14 @@ $coverage->setData(array (
),
176 => NULL,
),
-));
+);
+if (class_exists(\SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData::class)) {
+ $processedData = new \SebastianBergmann\CodeCoverage\ProcessedCodeCoverageData();
+ $processedData->setLineCoverage($data);
+
+ $data = $processedData;
+}
+$coverage->setData($data);
$coverage->setTests(array (
'UNCOVERED_FILES_FROM_WHITELIST' =>
array (
@@ -3825,40 +3869,4 @@ $coverage->setTests(array (
),
));
-$filter = $coverage->filter();
-$filter->setWhitelistedFiles(array (
- '/home/munkie/Projects/paratest/src/ParaTest/Console/Commands/ParaTestCommand.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Console/ParaTestApplication.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/PHPUnit.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Console/Testers/Tester.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageMerger.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporter.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterInterface.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Coverage/CoverageReporterLegacy.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Reader.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestCase.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/TestSuite.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/JUnit/Writer.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/LogInterpreter.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Logging/MetaProvider.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/NoClassInFileException.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedClass.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedFunction.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/ParsedObject.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Parser/Parser.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/BaseRunner.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Configuration.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ExecutableTest.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Options.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/ResultPrinter.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Runner.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Suite.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuiteLoader.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/SuitePath.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestFileLoader.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/TestMethod.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/Worker.php' => true,
- '/home/munkie/Projects/paratest/src/ParaTest/Runners/PHPUnit/WrapperRunner.php' => true,
-));
-
return $coverage;
\ No newline at end of file