PrePushOriginalExecutor   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 1
dl 0
loc 16
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A execute() 0 7 1
1
<?php
2
3
namespace PhpGitHooks\Module\Git\Infrastructure\Git;
4
5
use PhpGitHooks\Module\Git\Model\PrePushOriginalExecutorInterface;
6
use Symfony\Component\Process\Process;
7
8
class PrePushOriginalExecutor implements PrePushOriginalExecutorInterface
9
{
10
    /**
11
     * @param string $remote
12
     * @param string $url
13
     *
14
     * @return string|null
15
     */
16
    public function execute($remote, $url)
17
    {
18
        $process = new Process(sprintf('./%s %s %s', 'pre-push-original', $remote, $url));
0 ignored issues
show
Documentation introduced by
sprintf('./%s %s %s', 'p...iginal', $remote, $url) is of type string, but the function expects a 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);
Loading history...
19
        $process->run();
20
        
21
        return $process->getOutput();
22
    }
23
}
24