Completed
Pull Request — master (#8)
by Alexandre
06:20
created

PcntlCommandRunner   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Importance

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

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A runCommand() 0 4 1
A isSupported() 0 4 1
1
<?php
2
3
namespace RMiller\PhpSpecExtension\Process\CommandRunner;
4
5
use RMiller\PhpSpecExtension\Process\CommandRunner;
6
7
class PcntlCommandRunner implements CommandRunner
8
{
9
    /**
10
     * @var CliFunctionChecker
11
     */
12
    private $functionChecker;
13
14
    /**
15
     * @param CliFunctionChecker $functionChecker
16
     */
17
    public function __construct(CliFunctionChecker $functionChecker) {
18
        $this->functionChecker = $functionChecker;
19
    }
20
21
    /**
22
     * @param $path
23
     * @param $args
24
     */
25
    public function runCommand($path, $args)
26
    {
27
        pcntl_exec($path, $args);
28
    }
29
30
    public function isSupported()
31
    {
32
        return $this->functionChecker->functionCanBeUsed('pcntl_exec');
33
    }
34
}
35