Passed
Pull Request — master (#175)
by Alexander
02:36
created

ArrayDataTrait   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Test Coverage

Coverage 83.33%

Importance

Changes 0
Metric Value
eloc 6
dl 0
loc 16
ccs 5
cts 6
cp 0.8333
rs 10
c 0
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getAttributeValue() 0 7 2
A hasAttribute() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Validator\DataSet;
6
7
use Yiisoft\Validator\Exception\MissingAttributeException;
8
9
trait ArrayDataTrait
10
{
11
    private array $data;
12
13 1
    public function getAttributeValue(string $attribute)
14
    {
15 1
        if (!$this->hasAttribute($attribute)) {
16
            throw new MissingAttributeException("There is no \"$attribute\" key in the array.");
17
        }
18
19 1
        return $this->data[$attribute];
20
    }
21
22 1
    public function hasAttribute(string $attribute): bool
23
    {
24 1
        return isset($this->data[$attribute]);
25
    }
26
}
27