Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
9 / 9 |
|
100.00% |
5 / 5 |
CRAP | |
100.00% |
1 / 1 |
ValidatorRegex | |
100.00% |
9 / 9 |
|
100.00% |
5 / 5 |
5 | |
100.00% |
1 / 1 |
__construct | |
100.00% |
2 / 2 |
|
100.00% |
1 / 1 |
1 | |||
getRegexTester | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
setRegexTester | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
setMsgContent | |
100.00% |
4 / 4 |
|
100.00% |
1 / 1 |
1 | |||
testValue | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 |
1 | <?php |
2 | |
3 | /** |
4 | * @author: Doug Wilbourne (dougwilbourne@gmail.com) |
5 | */ |
6 | declare(strict_types=1); |
7 | |
8 | namespace pvc\validator\validator; |
9 | |
10 | use pvc\interfaces\msg\MsgInterface; |
11 | use pvc\validator\val_tester\regex\RegexTester; |
12 | use pvc\validator\Validator; |
13 | |
14 | /** |
15 | * Class ValidatorRegex |
16 | * @extends Validator<string> |
17 | */ |
18 | class ValidatorRegex extends Validator |
19 | { |
20 | /** |
21 | * @var RegexTester |
22 | */ |
23 | protected RegexTester $regexTester; |
24 | |
25 | /** |
26 | * @param MsgInterface $msg |
27 | * @param RegexTester $regexTester |
28 | */ |
29 | public function __construct(MsgInterface $msg, RegexTester $regexTester) |
30 | { |
31 | parent::__construct($msg); |
32 | $this->setRegexTester($regexTester); |
33 | } |
34 | |
35 | /** |
36 | * getRegexTester |
37 | * @return RegexTester |
38 | */ |
39 | public function getRegexTester(): RegexTester |
40 | { |
41 | return $this->regexTester; |
42 | } |
43 | |
44 | /** |
45 | * setRegexTester |
46 | * @param RegexTester $regexTester |
47 | */ |
48 | public function setRegexTester(RegexTester $regexTester): void |
49 | { |
50 | $this->regexTester = $regexTester; |
51 | } |
52 | |
53 | /** |
54 | * setMsgContent |
55 | */ |
56 | protected function setMsgContent(): void |
57 | { |
58 | $msgId = 'regex_test_failed'; |
59 | $msgParameters = ['regex_label' => $this->regexTester->getLabel()]; |
60 | $domain = 'Validator'; |
61 | $this->getMsg()->setContent($domain, $msgId, $msgParameters); |
62 | } |
63 | |
64 | /** |
65 | * testValue |
66 | * @param string $data |
67 | * @return bool |
68 | */ |
69 | protected function testValue(mixed $data): bool |
70 | { |
71 | return $this->regexTester->testValue($data); |
72 | } |
73 | } |