Skip to content

Commit 99b98d3

Browse files
committed
# This is a combination of 2 commits.
# This is the 1st commit message: replace null with empty string for cache warmer definition # This is the commit message #2: add unit test for cache warmer definition
1 parent b2a5e46 commit 99b98d3

2 files changed

Lines changed: 29 additions & 1 deletion

File tree

config/mapping.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@
8282
// cache warmer
8383
$services->set(CacheWarmer::class)
8484
->args([
85-
null, // cache directory, injected by extension
85+
'', // cache directory, injected by extension
8686
service('vich_uploader.metadata_reader'),
8787
])
8888
->tag('kernel.cache_warmer');

tests/DependencyInjection/VichUploaderExtensionTest.php

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,11 @@
33
namespace Vich\UploaderBundle\Tests\DependencyInjection;
44

55
use Matthias\SymfonyDependencyInjectionTest\PhpUnit\AbstractExtensionTestCase;
6+
use PHPUnit\Framework\Attributes\DataProvider;
67
use Symfony\Bundle\TwigBundle\DependencyInjection\TwigExtension;
8+
use Symfony\Component\DependencyInjection\Reference;
79
use Vich\UploaderBundle\DependencyInjection\VichUploaderExtension;
10+
use Vich\UploaderBundle\Metadata\CacheWarmer;
811
use Vich\UploaderBundle\Metadata\Driver\AttributeReader;
912
use Vich\UploaderBundle\Storage\FlysystemStorage;
1013
use Vich\UploaderBundle\Twig\Extension\UploaderExtension;
@@ -174,4 +177,29 @@ public function testDeprecatedMetadataDriverAliasStillExists(): void
174177

175178
$this->assertContainerBuilderHasAlias('vich_uploader.metadata_driver.annotation', 'vich_uploader.metadata_driver.attribute');
176179
}
180+
181+
#[DataProvider('cacheWarmerArgumentsProvider')]
182+
public function testMetadataCacheWarmerArguments(
183+
string $cache,
184+
string $expectedCacheDir,
185+
Reference $expectedMetadataReader
186+
): void {
187+
$this->load([
188+
'metadata' => [
189+
'cache' => $cache,
190+
],
191+
]);
192+
193+
$this->assertContainerBuilderHasServiceDefinitionWithArgument(CacheWarmer::class, 0, $expectedCacheDir);
194+
$this->assertContainerBuilderHasServiceDefinitionWithArgument(CacheWarmer::class, 1, $expectedMetadataReader);
195+
}
196+
197+
public static function cacheWarmerArgumentsProvider(): \Generator
198+
{
199+
$metadataReader = new Reference('vich_uploader.metadata_reader');
200+
201+
yield 'no cache' => ['none', '', $metadataReader];
202+
yield 'filesystem cache' => ['file', '%kernel.cache_dir%/vich_uploader', $metadataReader];
203+
yield 'custom cache service' => ['service_id', '', $metadataReader];
204+
}
177205
}

0 commit comments

Comments
 (0)