<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Translation\Tests; use PHPUnit\Framework\TestCase; use Symfony\Component\Translation\DataCollectorTranslator; use Symfony\Component\Translation\Loader\ArrayLoader; use Symfony\Component\Translation\Translator; class DataCollectorTranslatorTest extends TestCase { public function testCollectMessages() { $collector = $this->createCollector(); $collector->setFallbackLocales(['fr', 'ru']); $collector->trans('foo'); $collector->trans('bar'); $collector->trans('choice', ['%count%' => 0]); $collector->trans('bar_ru'); $collector->trans('bar_ru', ['foo' => 'bar']); $expectedMessages = []; $expectedMessages[] = [ 'id' => 'foo', 'translation' => 'foo (en)', 'locale' => 'en', 'fallbackLocale' => null, 'domain' => 'messages', 'state' => DataCollectorTranslator::MESSAGE_DEFINED, 'parameters' => [], 'transChoiceNumber' => null, ]; $expectedMessages[] = [ 'id' => 'bar', 'translation' => 'bar (fr)', 'locale' => 'en', 'fallbackLocale' => 'fr', 'domain' => 'messages', 'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK, 'parameters' => [], 'transChoiceNumber' => null, ]; $expectedMessages[] = [ 'id' => 'choice', 'translation' => 'choice', 'locale' => 'en', 'fallbackLocale' => null, 'domain' => 'messages', 'state' => DataCollectorTranslator::MESSAGE_MISSING, 'parameters' => ['%count%' => 0], 'transChoiceNumber' => 0, ]; $expectedMessages[] = [ 'id' => 'bar_ru', 'translation' => 'bar (ru)', 'locale' => 'en', 'fallbackLocale' => 'ru', 'domain' => 'messages', 'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK, 'parameters' => [], 'transChoiceNumber' => null, ]; $expectedMessages[] = [ 'id' => 'bar_ru', 'translation' => 'bar (ru)', 'locale' => 'en', 'fallbackLocale' => 'ru', 'domain' => 'messages', 'state' => DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK, 'parameters' => ['foo' => 'bar'], 'transChoiceNumber' => null, ]; $this->assertEquals($expectedMessages, $collector->getCollectedMessages()); } private function createCollector() { $translator = new Translator('en'); $translator->addLoader('array', new ArrayLoader()); $translator->addResource('array', ['foo' => 'foo (en)'], 'en'); $translator->addResource('array', ['bar' => 'bar (fr)'], 'fr'); $translator->addResource('array', ['bar_ru' => 'bar (ru)'], 'ru'); return new DataCollectorTranslator($translator); } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
Catalogue | Folder | 0755 |
|
|
Command | Folder | 0755 |
|
|
DataCollector | Folder | 0755 |
|
|
DependencyInjection | Folder | 0755 |
|
|
Dumper | Folder | 0755 |
|
|
Exception | Folder | 0755 |
|
|
Extractor | Folder | 0755 |
|
|
Formatter | Folder | 0755 |
|
|
Loader | Folder | 0755 |
|
|
Provider | Folder | 0755 |
|
|
Util | Folder | 0755 |
|
|
Writer | Folder | 0755 |
|
|
fixtures | Folder | 0755 |
|
|
DataCollectorTranslatorTest.php | File | 3.29 KB | 0644 |
|
IdentityTranslatorTest.php | File | 985 B | 0644 |
|
LocaleSwitcherTest.php | File | 3.11 KB | 0644 |
|
LoggingTranslatorTest.php | File | 953 B | 0644 |
|
MessageCatalogueTest.php | File | 10.64 KB | 0644 |
|
PseudoLocalizationTranslatorTest.php | File | 4.94 KB | 0644 |
|
TranslatableTest.php | File | 2.98 KB | 0644 |
|
TranslatorBagTest.php | File | 3.28 KB | 0644 |
|
TranslatorCacheTest.php | File | 12.88 KB | 0644 |
|
TranslatorTest.php | File | 21.8 KB | 0644 |
|