You are here

public function SymfonyStyleTest::testLongWordsBlockWrapping in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/console/Tests/Style/SymfonyStyleTest.php \Symfony\Component\Console\Tests\Style\SymfonyStyleTest::testLongWordsBlockWrapping()

File

vendor/symfony/console/Tests/Style/SymfonyStyleTest.php, line 49

Class

SymfonyStyleTest

Namespace

Symfony\Component\Console\Tests\Style

Code

public function testLongWordsBlockWrapping() {
  $word = 'Lopadotemachoselachogaleokranioleipsanodrimhypotrimmatosilphioparaomelitokatakechymenokichlepikossyphophattoperisteralektryonoptekephalliokigklopeleiolagoiosiraiobaphetraganopterygon';
  $wordLength = strlen($word);
  $maxLineLength = SymfonyStyle::MAX_LINE_LENGTH - 3;
  $this->command
    ->setCode(function (InputInterface $input, OutputInterface $output) use ($word) {
    $sfStyle = new SymfonyStyle($input, $output);
    $sfStyle
      ->block($word, 'CUSTOM', 'fg=white;bg=blue', ' § ', false);
  });
  $this->tester
    ->execute(array(), array(
    'interactive' => false,
    'decorated' => false,
  ));
  $expectedCount = (int) ceil($wordLength / $maxLineLength) + (int) ($wordLength > $maxLineLength - 5);
  $this
    ->assertSame($expectedCount, substr_count($this->tester
    ->getDisplay(true), ' § '));
}