aboutsummaryrefslogtreecommitdiff
path: root/vendor/phpunit/php-code-coverage/src/Driver
diff options
context:
space:
mode:
authorsupahgreg <supahgreg@users.noreply.github.com>2025-10-09 02:49:56 +0000
committersupahgreg <supahgreg@users.noreply.github.com>2025-10-09 03:08:30 +0000
commite41d6361221a30ca9d996cde7591111e626b7e1c (patch)
tree4572f61f37bbc76192ad60e0940c281483bc03af /vendor/phpunit/php-code-coverage/src/Driver
parentab0aabf8548c206f3f624de5451a9b6abbde90be (diff)
Remove dev dependencies and update the rest.
Diffstat (limited to 'vendor/phpunit/php-code-coverage/src/Driver')
-rw-r--r--vendor/phpunit/php-code-coverage/src/Driver/Driver.php167
-rw-r--r--vendor/phpunit/php-code-coverage/src/Driver/PcovDriver.php75
-rw-r--r--vendor/phpunit/php-code-coverage/src/Driver/PhpdbgDriver.php93
-rw-r--r--vendor/phpunit/php-code-coverage/src/Driver/Selector.php79
-rw-r--r--vendor/phpunit/php-code-coverage/src/Driver/Xdebug2Driver.php128
-rw-r--r--vendor/phpunit/php-code-coverage/src/Driver/Xdebug3Driver.php119
6 files changed, 0 insertions, 661 deletions
diff --git a/vendor/phpunit/php-code-coverage/src/Driver/Driver.php b/vendor/phpunit/php-code-coverage/src/Driver/Driver.php
deleted file mode 100644
index dc2de68f4..000000000
--- a/vendor/phpunit/php-code-coverage/src/Driver/Driver.php
+++ /dev/null
@@ -1,167 +0,0 @@
-<?php declare(strict_types=1);
-/*
- * This file is part of phpunit/php-code-coverage.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-namespace SebastianBergmann\CodeCoverage\Driver;
-
-use function sprintf;
-use SebastianBergmann\CodeCoverage\BranchAndPathCoverageNotSupportedException;
-use SebastianBergmann\CodeCoverage\DeadCodeDetectionNotSupportedException;
-use SebastianBergmann\CodeCoverage\Filter;
-use SebastianBergmann\CodeCoverage\NoCodeCoverageDriverAvailableException;
-use SebastianBergmann\CodeCoverage\NoCodeCoverageDriverWithPathCoverageSupportAvailableException;
-use SebastianBergmann\CodeCoverage\RawCodeCoverageData;
-
-/**
- * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage
- */
-abstract class Driver
-{
- /**
- * @var int
- *
- * @see http://xdebug.org/docs/code_coverage
- */
- public const LINE_NOT_EXECUTABLE = -2;
-
- /**
- * @var int
- *
- * @see http://xdebug.org/docs/code_coverage
- */
- public const LINE_NOT_EXECUTED = -1;
-
- /**
- * @var int
- *
- * @see http://xdebug.org/docs/code_coverage
- */
- public const LINE_EXECUTED = 1;
-
- /**
- * @var int
- *
- * @see http://xdebug.org/docs/code_coverage
- */
- public const BRANCH_NOT_HIT = 0;
-
- /**
- * @var int
- *
- * @see http://xdebug.org/docs/code_coverage
- */
- public const BRANCH_HIT = 1;
-
- /**
- * @var bool
- */
- private $collectBranchAndPathCoverage = false;
-
- /**
- * @var bool
- */
- private $detectDeadCode = false;
-
- /**
- * @throws NoCodeCoverageDriverAvailableException
- * @throws PcovNotAvailableException
- * @throws PhpdbgNotAvailableException
- * @throws Xdebug2NotEnabledException
- * @throws Xdebug3NotEnabledException
- * @throws XdebugNotAvailableException
- *
- * @deprecated Use DriverSelector::forLineCoverage() instead
- */
- public static function forLineCoverage(Filter $filter): self
- {
- return (new Selector)->forLineCoverage($filter);
- }
-
- /**
- * @throws NoCodeCoverageDriverWithPathCoverageSupportAvailableException
- * @throws Xdebug2NotEnabledException
- * @throws Xdebug3NotEnabledException
- * @throws XdebugNotAvailableException
- *
- * @deprecated Use DriverSelector::forLineAndPathCoverage() instead
- */
- public static function forLineAndPathCoverage(Filter $filter): self
- {
- return (new Selector)->forLineAndPathCoverage($filter);
- }
-
- public function canCollectBranchAndPathCoverage(): bool
- {
- return false;
- }
-
- public function collectsBranchAndPathCoverage(): bool
- {
- return $this->collectBranchAndPathCoverage;
- }
-
- /**
- * @throws BranchAndPathCoverageNotSupportedException
- */
- public function enableBranchAndPathCoverage(): void
- {
- if (!$this->canCollectBranchAndPathCoverage()) {
- throw new BranchAndPathCoverageNotSupportedException(
- sprintf(
- '%s does not support branch and path coverage',
- $this->nameAndVersion()
- )
- );
- }
-
- $this->collectBranchAndPathCoverage = true;
- }
-
- public function disableBranchAndPathCoverage(): void
- {
- $this->collectBranchAndPathCoverage = false;
- }
-
- public function canDetectDeadCode(): bool
- {
- return false;
- }
-
- public function detectsDeadCode(): bool
- {
- return $this->detectDeadCode;
- }
-
- /**
- * @throws DeadCodeDetectionNotSupportedException
- */
- public function enableDeadCodeDetection(): void
- {
- if (!$this->canDetectDeadCode()) {
- throw new DeadCodeDetectionNotSupportedException(
- sprintf(
- '%s does not support dead code detection',
- $this->nameAndVersion()
- )
- );
- }
-
- $this->detectDeadCode = true;
- }
-
- public function disableDeadCodeDetection(): void
- {
- $this->detectDeadCode = false;
- }
-
- abstract public function nameAndVersion(): string;
-
- abstract public function start(): void;
-
- abstract public function stop(): RawCodeCoverageData;
-}
diff --git a/vendor/phpunit/php-code-coverage/src/Driver/PcovDriver.php b/vendor/phpunit/php-code-coverage/src/Driver/PcovDriver.php
deleted file mode 100644
index c30b30c44..000000000
--- a/vendor/phpunit/php-code-coverage/src/Driver/PcovDriver.php
+++ /dev/null
@@ -1,75 +0,0 @@
-<?php declare(strict_types=1);
-/*
- * This file is part of phpunit/php-code-coverage.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-namespace SebastianBergmann\CodeCoverage\Driver;
-
-use const pcov\inclusive;
-use function array_intersect;
-use function extension_loaded;
-use function pcov\clear;
-use function pcov\collect;
-use function pcov\start;
-use function pcov\stop;
-use function pcov\waiting;
-use function phpversion;
-use SebastianBergmann\CodeCoverage\Filter;
-use SebastianBergmann\CodeCoverage\RawCodeCoverageData;
-
-/**
- * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage
- */
-final class PcovDriver extends Driver
-{
- /**
- * @var Filter
- */
- private $filter;
-
- /**
- * @throws PcovNotAvailableException
- */
- public function __construct(Filter $filter)
- {
- if (!extension_loaded('pcov')) {
- throw new PcovNotAvailableException;
- }
-
- $this->filter = $filter;
- }
-
- public function start(): void
- {
- start();
- }
-
- public function stop(): RawCodeCoverageData
- {
- stop();
-
- $filesToCollectCoverageFor = waiting();
- $collected = [];
-
- if ($filesToCollectCoverageFor) {
- if (!$this->filter->isEmpty()) {
- $filesToCollectCoverageFor = array_intersect($filesToCollectCoverageFor, $this->filter->files());
- }
-
- $collected = collect(inclusive, $filesToCollectCoverageFor);
-
- clear();
- }
-
- return RawCodeCoverageData::fromXdebugWithoutPathCoverage($collected);
- }
-
- public function nameAndVersion(): string
- {
- return 'PCOV ' . phpversion('pcov');
- }
-}
diff --git a/vendor/phpunit/php-code-coverage/src/Driver/PhpdbgDriver.php b/vendor/phpunit/php-code-coverage/src/Driver/PhpdbgDriver.php
deleted file mode 100644
index 7ee13b00f..000000000
--- a/vendor/phpunit/php-code-coverage/src/Driver/PhpdbgDriver.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php declare(strict_types=1);
-/*
- * This file is part of phpunit/php-code-coverage.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-namespace SebastianBergmann\CodeCoverage\Driver;
-
-use const PHP_SAPI;
-use const PHP_VERSION;
-use function array_diff;
-use function array_keys;
-use function array_merge;
-use function get_included_files;
-use function phpdbg_end_oplog;
-use function phpdbg_get_executable;
-use function phpdbg_start_oplog;
-use SebastianBergmann\CodeCoverage\RawCodeCoverageData;
-
-/**
- * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage
- */
-final class PhpdbgDriver extends Driver
-{
- /**
- * @throws PhpdbgNotAvailableException
- */
- public function __construct()
- {
- if (PHP_SAPI !== 'phpdbg') {
- throw new PhpdbgNotAvailableException;
- }
- }
-
- public function start(): void
- {
- phpdbg_start_oplog();
- }
-
- public function stop(): RawCodeCoverageData
- {
- static $fetchedLines = [];
-
- $dbgData = phpdbg_end_oplog();
-
- if ($fetchedLines === []) {
- $sourceLines = phpdbg_get_executable();
- } else {
- $newFiles = array_diff(get_included_files(), array_keys($fetchedLines));
-
- $sourceLines = [];
-
- if ($newFiles) {
- $sourceLines = phpdbg_get_executable(['files' => $newFiles]);
- }
- }
-
- foreach ($sourceLines as $file => $lines) {
- foreach ($lines as $lineNo => $numExecuted) {
- $sourceLines[$file][$lineNo] = self::LINE_NOT_EXECUTED;
- }
- }
-
- $fetchedLines = array_merge($fetchedLines, $sourceLines);
-
- return RawCodeCoverageData::fromXdebugWithoutPathCoverage(
- $this->detectExecutedLines($fetchedLines, $dbgData)
- );
- }
-
- public function nameAndVersion(): string
- {
- return 'PHPDBG ' . PHP_VERSION;
- }
-
- private function detectExecutedLines(array $sourceLines, array $dbgData): array
- {
- foreach ($dbgData as $file => $coveredLines) {
- foreach ($coveredLines as $lineNo => $numExecuted) {
- // phpdbg also reports $lineNo=0 when e.g. exceptions get thrown.
- // make sure we only mark lines executed which are actually executable.
- if (isset($sourceLines[$file][$lineNo])) {
- $sourceLines[$file][$lineNo] = self::LINE_EXECUTED;
- }
- }
- }
-
- return $sourceLines;
- }
-}
diff --git a/vendor/phpunit/php-code-coverage/src/Driver/Selector.php b/vendor/phpunit/php-code-coverage/src/Driver/Selector.php
deleted file mode 100644
index 936ee8981..000000000
--- a/vendor/phpunit/php-code-coverage/src/Driver/Selector.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php declare(strict_types=1);
-/*
- * This file is part of phpunit/php-code-coverage.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-namespace SebastianBergmann\CodeCoverage\Driver;
-
-use function phpversion;
-use function version_compare;
-use SebastianBergmann\CodeCoverage\Filter;
-use SebastianBergmann\CodeCoverage\NoCodeCoverageDriverAvailableException;
-use SebastianBergmann\CodeCoverage\NoCodeCoverageDriverWithPathCoverageSupportAvailableException;
-use SebastianBergmann\Environment\Runtime;
-
-final class Selector
-{
- /**
- * @throws NoCodeCoverageDriverAvailableException
- * @throws PcovNotAvailableException
- * @throws PhpdbgNotAvailableException
- * @throws Xdebug2NotEnabledException
- * @throws Xdebug3NotEnabledException
- * @throws XdebugNotAvailableException
- */
- public function forLineCoverage(Filter $filter): Driver
- {
- $runtime = new Runtime;
-
- if ($runtime->hasPHPDBGCodeCoverage()) {
- return new PhpdbgDriver;
- }
-
- if ($runtime->hasPCOV()) {
- return new PcovDriver($filter);
- }
-
- if ($runtime->hasXdebug()) {
- if (version_compare(phpversion('xdebug'), '3', '>=')) {
- $driver = new Xdebug3Driver($filter);
- } else {
- $driver = new Xdebug2Driver($filter);
- }
-
- $driver->enableDeadCodeDetection();
-
- return $driver;
- }
-
- throw new NoCodeCoverageDriverAvailableException;
- }
-
- /**
- * @throws NoCodeCoverageDriverWithPathCoverageSupportAvailableException
- * @throws Xdebug2NotEnabledException
- * @throws Xdebug3NotEnabledException
- * @throws XdebugNotAvailableException
- */
- public function forLineAndPathCoverage(Filter $filter): Driver
- {
- if ((new Runtime)->hasXdebug()) {
- if (version_compare(phpversion('xdebug'), '3', '>=')) {
- $driver = new Xdebug3Driver($filter);
- } else {
- $driver = new Xdebug2Driver($filter);
- }
-
- $driver->enableDeadCodeDetection();
- $driver->enableBranchAndPathCoverage();
-
- return $driver;
- }
-
- throw new NoCodeCoverageDriverWithPathCoverageSupportAvailableException;
- }
-}
diff --git a/vendor/phpunit/php-code-coverage/src/Driver/Xdebug2Driver.php b/vendor/phpunit/php-code-coverage/src/Driver/Xdebug2Driver.php
deleted file mode 100644
index 74cbbfbcd..000000000
--- a/vendor/phpunit/php-code-coverage/src/Driver/Xdebug2Driver.php
+++ /dev/null
@@ -1,128 +0,0 @@
-<?php declare(strict_types=1);
-/*
- * This file is part of phpunit/php-code-coverage.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-namespace SebastianBergmann\CodeCoverage\Driver;
-
-use const XDEBUG_CC_BRANCH_CHECK;
-use const XDEBUG_CC_DEAD_CODE;
-use const XDEBUG_CC_UNUSED;
-use const XDEBUG_FILTER_CODE_COVERAGE;
-use const XDEBUG_PATH_INCLUDE;
-use const XDEBUG_PATH_WHITELIST;
-use function defined;
-use function extension_loaded;
-use function ini_get;
-use function phpversion;
-use function sprintf;
-use function version_compare;
-use function xdebug_get_code_coverage;
-use function xdebug_set_filter;
-use function xdebug_start_code_coverage;
-use function xdebug_stop_code_coverage;
-use SebastianBergmann\CodeCoverage\Filter;
-use SebastianBergmann\CodeCoverage\RawCodeCoverageData;
-
-/**
- * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage
- */
-final class Xdebug2Driver extends Driver
-{
- /**
- * @var bool
- */
- private $pathCoverageIsMixedCoverage;
-
- /**
- * @throws WrongXdebugVersionException
- * @throws Xdebug2NotEnabledException
- * @throws XdebugNotAvailableException
- */
- public function __construct(Filter $filter)
- {
- if (!extension_loaded('xdebug')) {
- throw new XdebugNotAvailableException;
- }
-
- if (version_compare(phpversion('xdebug'), '3', '>=')) {
- throw new WrongXdebugVersionException(
- sprintf(
- 'This driver requires Xdebug 2 but version %s is loaded',
- phpversion('xdebug')
- )
- );
- }
-
- if (!ini_get('xdebug.coverage_enable')) {
- throw new Xdebug2NotEnabledException;
- }
-
- if (!$filter->isEmpty()) {
- if (defined('XDEBUG_PATH_WHITELIST')) {
- $listType = XDEBUG_PATH_WHITELIST;
- } else {
- $listType = XDEBUG_PATH_INCLUDE;
- }
-
- xdebug_set_filter(
- XDEBUG_FILTER_CODE_COVERAGE,
- $listType,
- $filter->files()
- );
- }
-
- $this->pathCoverageIsMixedCoverage = version_compare(phpversion('xdebug'), '2.9.6', '<');
- }
-
- public function canCollectBranchAndPathCoverage(): bool
- {
- return true;
- }
-
- public function canDetectDeadCode(): bool
- {
- return true;
- }
-
- public function start(): void
- {
- $flags = XDEBUG_CC_UNUSED;
-
- if ($this->detectsDeadCode() || $this->collectsBranchAndPathCoverage()) {
- $flags |= XDEBUG_CC_DEAD_CODE;
- }
-
- if ($this->collectsBranchAndPathCoverage()) {
- $flags |= XDEBUG_CC_BRANCH_CHECK;
- }
-
- xdebug_start_code_coverage($flags);
- }
-
- public function stop(): RawCodeCoverageData
- {
- $data = xdebug_get_code_coverage();
-
- xdebug_stop_code_coverage();
-
- if ($this->collectsBranchAndPathCoverage()) {
- if ($this->pathCoverageIsMixedCoverage) {
- return RawCodeCoverageData::fromXdebugWithMixedCoverage($data);
- }
-
- return RawCodeCoverageData::fromXdebugWithPathCoverage($data);
- }
-
- return RawCodeCoverageData::fromXdebugWithoutPathCoverage($data);
- }
-
- public function nameAndVersion(): string
- {
- return 'Xdebug ' . phpversion('xdebug');
- }
-}
diff --git a/vendor/phpunit/php-code-coverage/src/Driver/Xdebug3Driver.php b/vendor/phpunit/php-code-coverage/src/Driver/Xdebug3Driver.php
deleted file mode 100644
index b85db4034..000000000
--- a/vendor/phpunit/php-code-coverage/src/Driver/Xdebug3Driver.php
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php declare(strict_types=1);
-/*
- * This file is part of phpunit/php-code-coverage.
- *
- * (c) Sebastian Bergmann <sebastian@phpunit.de>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-namespace SebastianBergmann\CodeCoverage\Driver;
-
-use const XDEBUG_CC_BRANCH_CHECK;
-use const XDEBUG_CC_DEAD_CODE;
-use const XDEBUG_CC_UNUSED;
-use const XDEBUG_FILTER_CODE_COVERAGE;
-use const XDEBUG_PATH_INCLUDE;
-use function explode;
-use function extension_loaded;
-use function getenv;
-use function in_array;
-use function ini_get;
-use function phpversion;
-use function sprintf;
-use function version_compare;
-use function xdebug_get_code_coverage;
-use function xdebug_set_filter;
-use function xdebug_start_code_coverage;
-use function xdebug_stop_code_coverage;
-use SebastianBergmann\CodeCoverage\Filter;
-use SebastianBergmann\CodeCoverage\RawCodeCoverageData;
-
-/**
- * @internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage
- */
-final class Xdebug3Driver extends Driver
-{
- /**
- * @throws WrongXdebugVersionException
- * @throws Xdebug3NotEnabledException
- * @throws XdebugNotAvailableException
- */
- public function __construct(Filter $filter)
- {
- if (!extension_loaded('xdebug')) {
- throw new XdebugNotAvailableException;
- }
-
- if (version_compare(phpversion('xdebug'), '3', '<')) {
- throw new WrongXdebugVersionException(
- sprintf(
- 'This driver requires Xdebug 3 but version %s is loaded',
- phpversion('xdebug')
- )
- );
- }
-
- $mode = getenv('XDEBUG_MODE');
-
- if ($mode === false || $mode === '') {
- $mode = ini_get('xdebug.mode');
- }
-
- if ($mode === false ||
- !in_array('coverage', explode(',', $mode), true)) {
- throw new Xdebug3NotEnabledException;
- }
-
- if (!$filter->isEmpty()) {
- xdebug_set_filter(
- XDEBUG_FILTER_CODE_COVERAGE,
- XDEBUG_PATH_INCLUDE,
- $filter->files()
- );
- }
- }
-
- public function canCollectBranchAndPathCoverage(): bool
- {
- return true;
- }
-
- public function canDetectDeadCode(): bool
- {
- return true;
- }
-
- public function start(): void
- {
- $flags = XDEBUG_CC_UNUSED;
-
- if ($this->detectsDeadCode() || $this->collectsBranchAndPathCoverage()) {
- $flags |= XDEBUG_CC_DEAD_CODE;
- }
-
- if ($this->collectsBranchAndPathCoverage()) {
- $flags |= XDEBUG_CC_BRANCH_CHECK;
- }
-
- xdebug_start_code_coverage($flags);
- }
-
- public function stop(): RawCodeCoverageData
- {
- $data = xdebug_get_code_coverage();
-
- xdebug_stop_code_coverage();
-
- if ($this->collectsBranchAndPathCoverage()) {
- return RawCodeCoverageData::fromXdebugWithPathCoverage($data);
- }
-
- return RawCodeCoverageData::fromXdebugWithoutPathCoverage($data);
- }
-
- public function nameAndVersion(): string
- {
- return 'Xdebug ' . phpversion('xdebug');
- }
-}