Passed
Push — master ( 479027...748926 )
by Dominik
02:08
created

DeserializerRuntimeException   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 3
lcom 1
cbo 0
dl 0
loc 32
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A createNotParsable() 0 4 1
A createNotAllowedAddtionalFields() 0 4 1
A createInvalidType() 0 4 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Chubbyphp\Deserialization;
6
7
final class DeserializerRuntimeException extends \RuntimeException
8
{
9
    /**
10
     * @param string $path
11
     *
12
     * @return self
13
     */
14 1
    public static function createInvalidType(string $path, string $type): self
15
    {
16 1
        return new self(sprintf('There is an invalid type "%s" at path: %s', $type, $path));
17
    }
18
19
    /**
20
     * @param string $contentType
21
     *
22
     * @return self
23
     */
24 1
    public static function createNotParsable(string $contentType): self
25
    {
26 1
        return new self(sprintf('Data is not parsable with content-type: %s', $contentType));
27
    }
28
29
    /**
30
     * @param array $paths
31
     *
32
     * @return self
33
     */
34 1
    public static function createNotAllowedAddtionalFields(array $paths): self
35
    {
36 1
        return new self(sprintf('There are additional field(s) at paths: %s', implode(', ', $paths)));
37
    }
38
}
39