Completed
Push — master ( f0faac...5bd571 )
by Pablo
02:41
created

Sha1ValueObject   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
c 1
b 0
f 0
lcom 0
cbo 2
dl 0
loc 14
ccs 4
cts 4
cp 1
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A guard() 0 6 2
1
<?php
2
3
namespace PhpValueObjects\Identity;
4
5
use PhpValueObjects\AbstractStringValueObject;
6
use PhpValueObjects\Identity\Exception\InvalidSha1Exception;
7
8
abstract class Sha1ValueObject extends AbstractStringValueObject
9
{
10
    /**
11
     * @param string $value
12
     *
13
     * @throws InvalidSha1Exception
14
     */
15 5
    protected function guard($value)
16
    {
17 5
        if (false === (bool) preg_match('/^[a-f0-9]{40}$/', $value)) {
18 4
            throw new InvalidSha1Exception($value);
19
        }
20 1
    }
21
}
22