|
14 | 14 | use PHPUnit\Framework\TestCase;
|
15 | 15 | use Psr\Container\ContainerInterface;
|
16 | 16 | use Symfony\Bundle\FrameworkBundle\Translation\Translator;
|
| 17 | +use Symfony\Component\Config\Resource\DirectoryResource; |
| 18 | +use Symfony\Component\Config\Resource\FileExistenceResource; |
17 | 19 | use Symfony\Component\Filesystem\Filesystem;
|
18 | 20 | use Symfony\Component\Translation\Formatter\MessageFormatter;
|
19 | 21 | use Symfony\Component\Translation\MessageCatalogue;
|
@@ -223,6 +225,29 @@ public function getDebugModeAndCacheDirCombinations()
|
223 | 225 | ];
|
224 | 226 | }
|
225 | 227 |
|
| 228 | + public function testCatalogResourcesAreAddedForScannedDirectories() |
| 229 | + { |
| 230 | + $loader = new \Symfony\Component\Translation\Loader\YamlFileLoader(); |
| 231 | + $resourceFiles = [ |
| 232 | + 'fr' => [ |
| 233 | + __DIR__.'/../Fixtures/Resources/translations/messages.fr.yml', |
| 234 | + ], |
| 235 | + ]; |
| 236 | + |
| 237 | + /** @var Translator $translator */ |
| 238 | + $translator = $this->getTranslator($loader, [ |
| 239 | + 'resource_files' => $resourceFiles, |
| 240 | + 'scanned_directories' => [__DIR__, '/tmp/I/sure/hope/this/does/not/exist'], |
| 241 | + ], 'yml'); |
| 242 | + |
| 243 | + $catalogue = $translator->getCatalogue('fr'); |
| 244 | + |
| 245 | + $resources = $catalogue->getResources(); |
| 246 | + |
| 247 | + $this->assertEquals(new DirectoryResource(__DIR__), $resources[1]); |
| 248 | + $this->assertEquals(new FileExistenceResource('/tmp/I/sure/hope/this/does/not/exist'), $resources[2]); |
| 249 | + } |
| 250 | + |
226 | 251 | protected function getCatalogue($locale, $messages, $resources = [])
|
227 | 252 | {
|
228 | 253 | $catalogue = new MessageCatalogue($locale);
|
|
0 commit comments