1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
<?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\Bundle\FrameworkBundle\Tests\Functional;
use Symfony\Bundle\FrameworkBundle\Command\TranslationDebugCommand;
use Symfony\Bundle\FrameworkBundle\Console\Application;
use Symfony\Component\Console\Tester\CommandTester;
#[\PHPUnit\Framework\Attributes\Group('functional')]
class TranslationDebugCommandTest extends AbstractWebTestCase
{
private Application $application;
protected function setUp(): void
{
$kernel = static::createKernel(['test_case' => 'TransDebug', 'root_config' => 'config.yml']);
$this->application = new Application($kernel);
}
public function testDumpAllTrans()
{
$tester = $this->createCommandTester();
$ret = $tester->execute(['locale' => 'en']);
$this->assertSame(
TranslationDebugCommand::EXIT_CODE_MISSING | TranslationDebugCommand::EXIT_CODE_UNUSED,
$ret,
'Returns appropriate exit code in the event of error'
);
$this->assertStringContainsString('missing messages hello_from_construct_arg_service', $tester->getDisplay());
$this->assertStringContainsString('missing messages hello_from_subscriber_service', $tester->getDisplay());
$this->assertStringContainsString('missing messages hello_from_property_service', $tester->getDisplay());
$this->assertStringContainsString('missing messages hello_from_method_calls_service', $tester->getDisplay());
$this->assertStringContainsString('missing messages hello_from_controller', $tester->getDisplay());
$this->assertStringContainsString('unused validators This value should be blank.', $tester->getDisplay());
$this->assertStringContainsString('unused security Invalid CSRF token.', $tester->getDisplay());
}
private function createCommandTester(): CommandTester
{
$command = $this->application->find('debug:translation');
return new CommandTester($command);
}
}
|