|
4 | 4 |
|
5 | 5 | namespace DoctrineModuleTest\Service; |
6 | 6 |
|
7 | | -use Composer\InstalledVersions; |
8 | | -use Composer\Semver\VersionParser; |
9 | | -use Doctrine\Common\Cache\ArrayCache; |
10 | | -use Doctrine\Common\Cache\ChainCache; |
11 | | -use Doctrine\Common\Cache\PredisCache; |
12 | 7 | use DoctrineModule\Cache\LaminasStorageCache; |
13 | 8 | use DoctrineModule\Service\CacheFactory; |
14 | 9 | use Laminas\Cache\ConfigProvider; |
15 | 10 | use Laminas\Cache\Storage\Adapter\Memory; |
16 | 11 | use Laminas\ServiceManager\ServiceManager; |
17 | 12 | use PHPUnit\Framework\TestCase as BaseTestCase; |
18 | | -use Predis\ClientInterface; |
19 | | - |
20 | | -use function assert; |
21 | 13 |
|
22 | 14 | /** |
23 | 15 | * Test for {@see \DoctrineModule\Service\CacheFactory} |
24 | 16 | */ |
25 | 17 | class CacheFactoryTest extends BaseTestCase |
26 | 18 | { |
27 | | - /** @covers \DoctrineModule\Service\CacheFactory::__invoke */ |
28 | | - public function testWillSetNamespace(): void |
29 | | - { |
30 | | - if (! InstalledVersions::satisfies(new VersionParser(), 'doctrine/cache', '^1.0.0')) { |
31 | | - $this->markTestSkipped('This test requires doctrine/cache:^1.0, which is not installed.'); |
32 | | - } |
33 | | - |
34 | | - $factory = new CacheFactory('foo'); |
35 | | - $serviceManager = new ServiceManager(); |
36 | | - $serviceManager->setService( |
37 | | - 'config', |
38 | | - [ |
39 | | - 'doctrine' => [ |
40 | | - 'cache' => [ |
41 | | - 'foo' => [ |
42 | | - 'class' => ArrayCache::class, |
43 | | - 'namespace' => 'bar', |
44 | | - ], |
45 | | - ], |
46 | | - ], |
47 | | - ], |
48 | | - ); |
49 | | - |
50 | | - $service = $factory->__invoke($serviceManager, ArrayCache::class); |
51 | | - assert($service instanceof ArrayCache); |
52 | | - |
53 | | - $this->assertInstanceOf(ArrayCache::class, $service); |
54 | | - $this->assertSame('bar', $service->getNamespace()); |
55 | | - } |
56 | | - |
57 | 19 | /** |
58 | 20 | * @covers \DoctrineModule\Service\CacheFactory::__invoke |
59 | 21 | * @group 547 |
@@ -85,65 +47,4 @@ public function testCreateLaminasCache(): void |
85 | 47 |
|
86 | 48 | $this->assertInstanceOf(LaminasStorageCache::class, $cache); |
87 | 49 | } |
88 | | - |
89 | | - public function testCreatePredisCache(): void |
90 | | - { |
91 | | - if (! InstalledVersions::satisfies(new VersionParser(), 'doctrine/cache', '^1.0.0')) { |
92 | | - $this->markTestSkipped('This test requires doctrine/cache:^1.0, which is not installed.'); |
93 | | - } |
94 | | - |
95 | | - $factory = new CacheFactory('predis'); |
96 | | - $serviceManager = new ServiceManager(); |
97 | | - $serviceManager->setService( |
98 | | - 'config', |
99 | | - [ |
100 | | - 'doctrine' => [ |
101 | | - 'cache' => [ |
102 | | - 'predis' => [ |
103 | | - 'class' => PredisCache::class, |
104 | | - 'instance' => 'my_predis_alias', |
105 | | - 'namespace' => 'DoctrineModule', |
106 | | - ], |
107 | | - ], |
108 | | - ], |
109 | | - ], |
110 | | - ); |
111 | | - $serviceManager->setService( |
112 | | - 'my_predis_alias', |
113 | | - $this->createMock(ClientInterface::class), |
114 | | - ); |
115 | | - $cache = $factory->__invoke($serviceManager, PredisCache::class); |
116 | | - |
117 | | - $this->assertInstanceOf(PredisCache::class, $cache); |
118 | | - } |
119 | | - |
120 | | - public function testUseServiceFactory(): void |
121 | | - { |
122 | | - if (! InstalledVersions::satisfies(new VersionParser(), 'doctrine/cache', '^1.0.0')) { |
123 | | - $this->markTestSkipped('This test requires doctrine/cache:^1.0, which is not installed.'); |
124 | | - } |
125 | | - |
126 | | - $factory = new CacheFactory('chain'); |
127 | | - $serviceManager = new ServiceManager(); |
128 | | - $serviceManager->setService( |
129 | | - 'config', |
130 | | - [ |
131 | | - 'doctrine' => [ |
132 | | - 'cache' => [ |
133 | | - 'chain' => [ |
134 | | - 'class' => ChainCache::class, |
135 | | - ], |
136 | | - ], |
137 | | - ], |
138 | | - ], |
139 | | - ); |
140 | | - |
141 | | - $mock = $this->createMock(ChainCache::class); |
142 | | - |
143 | | - $serviceManager->setFactory(ChainCache::class, static fn () => $mock); |
144 | | - |
145 | | - $cache = $factory->__invoke($serviceManager, ChainCache::class); |
146 | | - |
147 | | - $this->assertSame($mock, $cache); |
148 | | - } |
149 | 50 | } |
0 commit comments