Open ilario-pierbattista opened 1 month ago
In normal execution the PassThrough
class would forward all options from the base Paraunit execution to the PHPunit one, but that doesn't happen with chunks: https://github.com/facile-it/paraunit/blob/032bb2d404e8449b672c489f826c207d6e52a282/src/Process/ProcessFactory.php#L52-L65
I do not understand how this is happening..
PassThrough was added at least one year later after chunking ... https://github.com/facile-it/paraunit/commit/f4eb32f978ebc6bf049c42298f369570843f7a5d Since it was added only in normal flow, maybe it was concluded that this option is not possible, when using chunking?
@ilario-pierbattista I'm sorry but I'm unable to reproduce the issue, I've tried with #276, both under 1.x and 2.x, and the --testsuite
options does not get appended to the PHPUnit processes execution. Are you sure you do not have something else interfering?
@Jean85 I've just updated #276 to reproduce it.
The problem seems to be \Paraunit\Command\ParallelCommand::addPHPUnitOptions
and the way PHPUnitConfig
gets configured in 1.x.
In \Paraunit\Process\ProcessFactory::create
where baseCommandLine
contains also the --testsuite
.
Probabily it don't affect 2.x.
Given that testsuite is the way tests are chunked in PHPUnit config files, maybe we could explicitly exclude the testsuite option in the ProcessFactory.
Edit: fix (almost) ready in #277
@Jean85 thank you for releasing 1.3.1, it runs as expected 😄
If I try to execute
paraunit run --testsuite=functional --chunk-size=5
then paraunit exits with no test executed.
With the
--debug
flag it printsWith the content of /app/phpunit.xml_0.dist being
The command used for the subprocess takes the
--testsuite=functional
option the paraunit command. Hence, each process won't execute any test.I would expect the
--testsuite
option to be used before the chunks are created, and then it won't be an option of the sub process command.What do you think?