Completed
Push — master ( 6fb1e5...886f18 )
by Alexey
02:58 queued 12s
created

AbstractValidation   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 10
c 1
b 0
f 0
dl 0
loc 24
ccs 7
cts 7
cp 1
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A error() 0 3 1
A group() 0 3 1
1
<?php
2
3
4
namespace Lexuss1979\Validol\Validations;
5
6
7
use Lexuss1979\Validol\ValueObject;
8
9
abstract class AbstractValidation
10
{
11
    const REQUIREMENTS_GROUP = 'requirements';
12
    const TYPE_GROUP = 'type';
13
    const COMMON_GROUP = 'common';
14
    protected $error;
15
    protected $options;
16
    protected $group = self::COMMON_GROUP;
17
18 47
    public function __construct($options = null)
19
    {
20 47
        $this->options = $options;
21 47
    }
22
23 27
    public function error()
24
    {
25 27
        return $this->error;
26
    }
27
28
    abstract public function validate(ValueObject $data);
29
30 47
    public function group()
31
    {
32 47
        return $this->group;
33
    }
34
}