Passed
Push — master ( 5d30f6...461084 )
by Alexey
02:28
created

DateBetweenValidation   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

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

2 Methods

Rating   Name   Duplication   Size   Complexity  
A errorMessage() 0 3 1
A isValid() 0 7 2
1
<?php
2
3
4
namespace Lexuss1979\Validol\Validations;
5
6
7
use Lexuss1979\Validol\ValueObject;
8
9
class DateBetweenValidation extends AbstractValidation implements ValidationInterface
10
{
11 6
    public function isValid(ValueObject $data)
12
    {
13 6
        $valueTime = strtotime($data->value());
14 6
        $targetStartTime = strtotime($this->options[0]);
15 6
        $targetEndTime = strtotime($this->options[1]);
16
17 6
        return ( $valueTime > $targetStartTime ) && ( $valueTime < $targetEndTime);
18
    }
19
20 5
    public function errorMessage()
21
    {
22 5
        return "{$this->data->name()} must be after {$this->options[0]} and before {$this->options[1]}";
23
    }
24
}