diff --git a/src/Context/FeatureContext.php b/src/Context/FeatureContext.php index b8f4502fb..df28bb3dd 100644 --- a/src/Context/FeatureContext.php +++ b/src/Context/FeatureContext.php @@ -12,6 +12,7 @@ use Behat\Behat\Hook\Scope\BeforeStepScope; use SebastianBergmann\CodeCoverage\Report\Clover; use SebastianBergmann\CodeCoverage\Driver\Selector; +use SebastianBergmann\CodeCoverage\Driver\Xdebug; use SebastianBergmann\CodeCoverage\Filter; use SebastianBergmann\CodeCoverage\CodeCoverage; use SebastianBergmann\Environment\Runtime; @@ -198,7 +199,8 @@ public static function merge_coverage_reports() { $filter = new Filter(); $coverage = new CodeCoverage( - ( new Selector() )->forLineCoverage( $filter ), + // Selector class was only added in v9.1 of the php-code-coverage library. + class_exists( Selector::class ) ? ( new Selector() )->forLineCoverage( $filter ) : ( new Xdebug() ), $filter ); diff --git a/utils/generate-coverage.php b/utils/generate-coverage.php index 3e01b5e48..007e66ae1 100644 --- a/utils/generate-coverage.php +++ b/utils/generate-coverage.php @@ -8,6 +8,7 @@ use SebastianBergmann\CodeCoverage\CodeCoverage; use SebastianBergmann\CodeCoverage\Driver\Selector; +use SebastianBergmann\CodeCoverage\Driver\Xdebug; use SebastianBergmann\CodeCoverage\Filter; use SebastianBergmann\CodeCoverage\Report\PHP as PHPReport; @@ -81,7 +82,8 @@ function ( $file ) { } $coverage = new CodeCoverage( - ( new Selector() )->forLineCoverage( $filter ), + // Selector class was only added in v9.1 of the php-code-coverage library. + class_exists( Selector::class ) ? ( new Selector() )->forLineCoverage( $filter ) : ( new Xdebug() ), $filter );