*
* 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:----G4nFiOsMi9uDABXcToiDeLgYneMQSrYj+KCuJQuVzHKGTaEpuaU3MMwy65DmxqGPppE0C6Tdpdb2566lY8/pBUM5x+4CQKAx/u0D0yglBzLAs6FrJaUZqF8lLkLwzevoKz7W/P5DmZxJxw4xehlkDRS1aFRHoQwyBOS0cy8MRgwYFLQ32Q58JT5suTYkNghSIqQlFTUG5RKQTryPo00Ayt9dbB4LHl1qbSMb86D1f/VNhHXkpYjEBrFGAgZK+9zCG59PjKC2FpfpGHFf49EG7uxaeEzIVVq8f+/+sa9qoUbT/oNauSmF4AFL7d2jtygcmdVX2yw0HUqAei1K9a0QdRGM4ibfHvDtnV0LxnilStQcaL2V0dtPoFZ4z7eoAjC8kF/5vAD2myZJijzgwMKM/k6R/oPen9fyoIG7G98MdbfD8QuiBQqnkj1lb4JirxcWL9RJKpD0JY37OD6d75b2h9iVjKs+JYsYV4tlr/J1dtnZMOlXVBwTp1Y258gbDuVkI7tEH0ULq3OWhcfTYc6+hNOWVHnK9wqIVqQ0iBITjYw37A6hqoDmzMajUl6VzKJdeyXSYYaCh49IKCGjww+gDC4HFidCeqaF/piKWAl2W2TszzebtyUDEEBNJ8vYm+qCP+X9QqHnVSiZko1iru1xiiZZ+bhqSxONvyZyDLWr714=----ATTACHMENT:----OTU4NTk2NDMwMzU4MTUxIDgwMDM5NTE4OTA1MTYwIDExNTkxMjI5Nzc4NDU5NA==