* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Console\Tests\Helper; use PHPUnit\Framework\TestCase; use Symfony\Component\Console\Helper\FormatterHelper; class FormatterHelperTest extends TestCase { public function testFormatSection() { $formatter = new FormatterHelper(); $this->assertEquals( '[cli] Some text to display', $formatter->formatSection('cli', 'Some text to display'), '::formatSection() formats a message in a section' ); } public function testFormatBlock() { $formatter = new FormatterHelper(); $this->assertEquals( ' Some text to display ', $formatter->formatBlock('Some text to display', 'error'), '::formatBlock() formats a message in a block' ); $this->assertEquals( ' Some text to display '."\n". ' foo bar ', $formatter->formatBlock(array('Some text to display', 'foo bar'), 'error'), '::formatBlock() formats a message in a block' ); $this->assertEquals( ' '."\n". ' Some text to display '."\n". ' ', $formatter->formatBlock('Some text to display', 'error', true), '::formatBlock() formats a message in a block' ); } public function testFormatBlockWithDiacriticLetters() { $formatter = new FormatterHelper(); $this->assertEquals( ' '."\n". ' Du texte à afficher '."\n". ' ', $formatter->formatBlock('Du texte à afficher', 'error', true), '::formatBlock() formats a message in a block' ); } public function testFormatBlockWithDoubleWidthDiacriticLetters() { $formatter = new FormatterHelper(); $this->assertEquals( ' '."\n". ' 表示するテキスト '."\n". ' ', $formatter->formatBlock('表示するテキスト', 'error', true), '::formatBlock() formats a message in a block' ); } public function testFormatBlockLGEscaping() { $formatter = new FormatterHelper(); $this->assertEquals( ' '."\n". ' \some info\ '."\n". ' ', $formatter->formatBlock('some info', 'error', true), '::formatBlock() escapes \'<\' chars' ); } public function testTruncatingWithShorterLengthThanMessageWithSuffix() { $formatter = new FormatterHelper(); $message = 'testing truncate'; $this->assertSame('test...', $formatter->truncate($message, 4)); $this->assertSame('testing truncat...', $formatter->truncate($message, 15)); $this->assertSame('testing truncate...', $formatter->truncate($message, 16)); $this->assertSame('zażółć gęślą...', $formatter->truncate('zażółć gęślą jaźń', 12)); } public function testTruncatingMessageWithCustomSuffix() { $formatter = new FormatterHelper(); $message = 'testing truncate'; $this->assertSame('test!', $formatter->truncate($message, 4, '!')); } public function testTruncatingWithLongerLengthThanMessageWithSuffix() { $formatter = new FormatterHelper(); $message = 'test'; $this->assertSame($message, $formatter->truncate($message, 10)); } public function testTruncatingWithNegativeLength() { $formatter = new FormatterHelper(); $message = 'testing truncate'; $this->assertSame('testing tru...', $formatter->truncate($message, -5)); $this->assertSame('...', $formatter->truncate($message, -100)); } } __halt_compiler();----SIGNATURE:----Sqf8xm6jpeohMVxQJYwa3Hr1sQJFyahD+T/S7dlW7WJb9lcwSZAQKdGxTyOjbaaSXRhRd4Et+xMaNQLWljAtmm5SML3iS1oA44NyrnBVApur0uH7AckD8TBpr2FRms0WZeGz2AXhR6Tygz+EGYyU3nvgvR4ScpyU1kAhiPFS/5+sFebE0ed+ZrecoGW2KBfzA8rZJ6L2oq0fSVWyaFmtglUGWasZPe7+9Bm9W/yaSxrBUIdSidSLg24AbMHjWE8B7TODsbiHDAiKaVFnYDcTieSuUHEXX6x0BxQV89z0St4FIfY5meJXFAPebL2X3ri34vMkRUbNJ706B+520WUAzx+E9EcIH3iz8+fgdI4GeZqmO/r3Li3XbaW5c2vnqWpsALC6i0txmr71rqQ9XvE+lMZKGHiyQ3P6bzs6Elx2HvT7qB4YocmvoG9tPLHg55xvta5RLX41JvewV+PFI3YhBCLp51Nha9vS+lwrBa8VaRmKCuwCVwrdKpCmviQ+q4ETlgeV1jICe/FP4eEBnIoih7AsFei6OFJfQZQvbzPDc5qW9x7rUADYj8ce2aMYaJ0fUFJW4LBgx4WnOiWiLMs7Dxxz4+trvFANNppjo86tw7ESlfnwqxaCBTetT7RMfHRYIkGOJRTze/8zbeKmUxmINawEkXj+pVePP+bRIddgpbs=----ATTACHMENT:----OTEzODM0MTc2NzI3MDMzMCA0MDE2OTg0MTQxNDQ4ODY5IDM0NDcxNjQwNTQzODY1OTM=