for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace PhpGitHooks\Module\PhpUnit\Infrastructure\Tool;
use PhpGitHooks\Infrastructure\Tool\ToolPathFinder;
use PhpGitHooks\Module\PhpUnit\Model\StrictCoverageProcessorInterface;
use Symfony\Component\Process\Process;
class StrictCoverageProcessor implements StrictCoverageProcessorInterface
{
/**
* @var ToolPathFinder
*/
private $toolPathFinder;
* StrictCoverageProcessor constructor.
*
* @param ToolPathFinder $toolPathFinder
public function __construct(ToolPathFinder $toolPathFinder)
$this->toolPathFinder = $toolPathFinder;
}
* @return float
public function process()
$tool = $this->toolPathFinder->find('phpunit');
$command = 'php '.$tool.' --coverage-text|grep Classes| tr -s \' \' |cut -d " " -f 3|cut -d "%" -f 1';
$process = new Process($command);
$command
string
array
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example:
function acceptsInteger($int) { } $x = '123'; // string "123" // Instead of acceptsInteger($x); // we recommend to use acceptsInteger((integer) $x);
$process->run();
return (float) $process->getOutput();
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example: