Passed
Push — master ( 74010f...cd30de )
by Tom
03:00
created

StatusException   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 2
Bugs 1 Features 0
Metric Value
eloc 6
c 2
b 1
f 0
dl 0
loc 19
ccs 6
cts 6
cp 1
rs 10
wmc 4

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 10 4
1
<?php
2
3
/* this file is part of pipelines */
4
5
namespace Ktomk\Pipelines\Utility;
6
7
use Exception;
8
9
/**
10
 * Signal utility exit status, optionally with an (error) message
11
 */
12
class StatusException extends Exception
13
{
14
    /**
15
     * StatusException constructor.
16
     *
17
     * @param string $message
18
     * @param int|string $code
19
     * @param null|Exception $previous
20
     */
21 6
    public function __construct($message = '', $code = 0, Exception $previous = null)
22
    {
23 6
        if (!is_int($code) || $code < 0 || $code > 255) {
24 2
            throw new \InvalidArgumentException(sprintf(
25 2
                'Code must be integer in range from 0 to 255, %s given',
26 2
                var_export($code, true)
27
            ));
28
        }
29
30 4
        parent::__construct($message, $code, $previous);
31 4
    }
32
}
33