From c2f30e0148e5a2a06843943c5a3250d70d2cf6fa Mon Sep 17 00:00:00 2001 From: lukeraymonddowning Date: Wed, 11 Sep 2024 15:04:44 +0100 Subject: [PATCH 1/2] Fixes parallel mutation testing when using Laravel Herd. --- src/Plugins/Parallel/Paratest/WrapperRunner.php | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/Plugins/Parallel/Paratest/WrapperRunner.php b/src/Plugins/Parallel/Paratest/WrapperRunner.php index 1c1a1e8b..7946450a 100644 --- a/src/Plugins/Parallel/Paratest/WrapperRunner.php +++ b/src/Plugins/Parallel/Paratest/WrapperRunner.php @@ -122,6 +122,8 @@ final class WrapperRunner implements RunnerInterface $parameters = array_merge($parameters, $options->passthruPhp); } + $parameters = $this->handleLaravelHerd($parameters); + $parameters[] = $wrapper; $this->parameters = $parameters; @@ -153,6 +155,21 @@ final class WrapperRunner implements RunnerInterface return $this->complete($result); } + /** + * Handles Laravel Herd's debug and coverage modes. + * + * @param array $parameters + * @return array + */ + private function handleLaravelHerd(array $parameters): array + { + if (isset($_ENV['HERD_DEBUG_INI'])) { + return array_merge($parameters, ['-c', $_ENV['HERD_DEBUG_INI']]); + } + + return $parameters; + } + private function startWorkers(): void { for ($token = 1; $token <= $this->options->processes; $token++) { From b16e8650dae1301300f8e7366f0e2bae6fcc9b70 Mon Sep 17 00:00:00 2001 From: lukeraymonddowning Date: Wed, 11 Sep 2024 15:11:47 +0100 Subject: [PATCH 2/2] Fixes parallel mutation testing when using Laravel Herd. --- src/Plugins/Parallel/Paratest/WrapperRunner.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Plugins/Parallel/Paratest/WrapperRunner.php b/src/Plugins/Parallel/Paratest/WrapperRunner.php index 7946450a..fa64727a 100644 --- a/src/Plugins/Parallel/Paratest/WrapperRunner.php +++ b/src/Plugins/Parallel/Paratest/WrapperRunner.php @@ -158,7 +158,7 @@ final class WrapperRunner implements RunnerInterface /** * Handles Laravel Herd's debug and coverage modes. * - * @param array $parameters + * @param array $parameters * @return array */ private function handleLaravelHerd(array $parameters): array