Adds --profile

This commit is contained in:
Nuno Maduro
2022-09-16 19:11:59 +01:00
parent 3d5271f512
commit b0b83505af
2 changed files with 25 additions and 19 deletions

View File

@ -19,8 +19,10 @@ use Symfony\Component\Console\Output\OutputInterface;
foreach ($args as $key => $value) { foreach ($args as $key => $value) {
if (str_contains($value, '--compact')) { if (str_contains($value, '--compact')) {
$_SERVER['COLLISION_PRINTER_COMPACT'] = 'true'; $_SERVER['COLLISION_PRINTER_COMPACT'] = 'true';
}
break; if (str_contains($value, '--profile')) {
$_SERVER['COLLISION_PRINTER_PROFILE'] = 'true';
} }
} }
@ -63,6 +65,10 @@ use Symfony\Component\Console\Output\OutputInterface;
if (str_contains($value, '--compact')) { if (str_contains($value, '--compact')) {
unset($args[$key]); unset($args[$key]);
} }
if (str_contains($value, '--profile')) {
unset($args[$key]);
}
} }
$kernel = Kernel::boot(); $kernel = Kernel::boot();

View File

@ -78,6 +78,24 @@ final class Coverage implements AddsOutput, HandlesArguments
$this->coverage = true; $this->coverage = true;
$originals[] = '--coverage-php'; $originals[] = '--coverage-php';
$originals[] = \Pest\Support\Coverage::getPath(); $originals[] = \Pest\Support\Coverage::getPath();
if (! \Pest\Support\Coverage::isAvailable()) {
if (\Pest\Support\Coverage::usingXdebug()) {
$this->output->writeln([
'',
" <fg=default;bg=red;options=bold> ERROR </> Unable to get coverage using Xdebug. Did you set <href=https://xdebug.org/docs/code_coverage#mode>Xdebug's coverage mode</>?</>",
'',
]);
} else {
$this->output->writeln([
'',
' <fg=default;bg=red;options=bold> ERROR </> No code coverage driver is available.</>',
'',
]);
}
exit(1);
}
} }
if ($input->getOption(self::MIN_OPTION) !== null) { if ($input->getOption(self::MIN_OPTION) !== null) {
@ -87,24 +105,6 @@ final class Coverage implements AddsOutput, HandlesArguments
$this->coverageMin = (float) $minOption; $this->coverageMin = (float) $minOption;
} }
if (! \Pest\Support\Coverage::isAvailable()) {
if (\Pest\Support\Coverage::usingXdebug()) {
$this->output->writeln([
'',
" <fg=default;bg=red;options=bold> ERROR </> Unable to get coverage using Xdebug. Did you set <href=https://xdebug.org/docs/code_coverage#mode>Xdebug's coverage mode</>?</>",
'',
]);
} else {
$this->output->writeln([
'',
' <fg=default;bg=red;options=bold> ERROR </> No code coverage driver is available.</>',
'',
]);
}
exit(1);
}
return $originals; return $originals;
} }