Passed
Push — master ( dc1d0d...74f1fd )
by Alexander
01:47
created

DependencyTestCase   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 4
eloc 6
dl 0
loc 22
rs 10
c 1
b 0
f 0

4 Methods

Rating   Name   Duplication   Size   Complexity  
A assertDependencyChanged() 0 3 1
A assertDependencyNotChanged() 0 3 1
A getCache() 0 3 1
A createCache() 0 3 1
1
<?php
2
namespace Yiisoft\Cache\Tests\Dependency;
3
4
use Yiisoft\Cache\CacheInterface;
5
use Yiisoft\Cache\Dependency\Dependency;
6
use Yiisoft\Cache\NullCache;
7
use Yiisoft\Cache\Tests\TestCase;
8
9
abstract class DependencyTestCase extends TestCase
10
{
11
    private $cache;
12
13
    protected function getCache(): CacheInterface
14
    {
15
        return $this->cache ?? $this->cache = $this->createCache();
16
    }
17
18
    protected function createCache(): CacheInterface
19
    {
20
        return new NullCache();
21
    }
22
23
    protected function assertDependencyChanged(Dependency $dependency): void
24
    {
25
        $this->assertTrue($dependency->isChanged($this->getCache()), 'Dependecy data was not changed');
26
    }
27
28
    protected function assertDependencyNotChanged(Dependency $dependency): void
29
    {
30
        $this->assertFalse($dependency->isChanged($this->getCache()), 'Dependecy data was changed');
31
    }
32
}
33