Conditions | 4 |
Paths | 4 |
Total Lines | 20 |
Code Lines | 12 |
Lines | 0 |
Ratio | 0 % |
Tests | 0 |
CRAP Score | 20 |
Changes | 0 |
1 | <?php |
||
26 | public function validate(ValidationContext $context) |
||
27 | { |
||
28 | if (empty($this->value)) { |
||
29 | throw $this->createValidationException( |
||
30 | $context, |
||
31 | 'you must provide a class as value. Example @Slumber\AsObject( MyEnum::class )' |
||
32 | ); |
||
33 | } |
||
34 | |||
35 | if (!class_exists($this->value)) { |
||
36 | throw $this->createValidationException( |
||
37 | $context, |
||
38 | "you provided the non-existing class '$this->value'" |
||
39 | ); |
||
40 | } |
||
41 | |||
42 | if (!is_a($this->value, Enumerated::class, true)) { |
||
43 | throw $this->createValidationException( |
||
44 | $context, |
||
45 | "you provided the class '$this->value' which does not extend " . Enumerated::class |
||
46 | ); |
||
58 |