Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. PcovDriver.php

class PcovDriver

@internal This class is not covered by the backward compatibility promise for phpunit/php-code-coverage

Hierarchy

  • class \SebastianBergmann\CodeCoverage\Driver\Driver
    • class \SebastianBergmann\CodeCoverage\Driver\PcovDriver extends \SebastianBergmann\CodeCoverage\Driver\Driver

Expanded class hierarchy of PcovDriver

File

vendor/phpunit/php-code-coverage/src/Driver/PcovDriver.php, line 27

Namespace

SebastianBergmann\CodeCoverage\Driver
View source
final class PcovDriver extends Driver {
    private readonly Filter $filter;
    
    /**
     * @throws PcovNotAvailableException
     */
    public function __construct(Filter $filter) {
        $this->ensurePcovIsAvailable();
        $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');
    }
    
    /**
     * @throws PcovNotAvailableException
     */
    private function ensurePcovIsAvailable() : void {
        if (!extension_loaded('pcov')) {
            throw new PcovNotAvailableException();
        }
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
Driver::$collectBranchAndPathCoverage private property
Driver::$detectDeadCode private property
Driver::BRANCH_HIT public constant
Driver::BRANCH_NOT_HIT public constant
Driver::canCollectBranchAndPathCoverage public function 1
Driver::canDetectDeadCode public function 1
Driver::collectsBranchAndPathCoverage public function
Driver::detectsDeadCode public function
Driver::disableBranchAndPathCoverage public function
Driver::disableDeadCodeDetection public function
Driver::enableBranchAndPathCoverage public function
Driver::enableDeadCodeDetection public function
Driver::LINE_EXECUTED public constant
Driver::LINE_NOT_EXECUTABLE public constant
Driver::LINE_NOT_EXECUTED public constant
PcovDriver::$filter private property
PcovDriver::ensurePcovIsAvailable private function
PcovDriver::nameAndVersion public function Overrides Driver::nameAndVersion
PcovDriver::start public function Overrides Driver::start
PcovDriver::stop public function Overrides Driver::stop
PcovDriver::__construct public function
RSS feed
Powered by Drupal