Exemple #1
0
 public function setErrorWriter(atoum\writer $writer = null)
 {
     parent::setErrorWriter($writer);
     if ($writer === null) {
         $colorizer = new cli\colorizer('0;31');
         $colorizer->setPattern('/^([^:]+:)/');
         $this->errorWriter->addDecorator($colorizer);
     }
     return $this;
 }
Exemple #2
0
 public function testSetHelpWriter()
 {
     $this->if($script = new mock\script($name = uniqid()))->then->object($script->setHelpWriter($helpWriter = new writers\std\out()))->isIdenticalTo($script)->object($script->getHelpWriter())->isIdenticalTo($helpWriter)->given($labelColorizer = new atoum\cli\colorizer('0;32'), $labelColorizer->setPattern('/(^[^:]+: )/'), $argumentColorizer = new atoum\cli\colorizer('0;32'), $argumentColorizer->setPattern('/((?:^| )[-+]+[-a-z]+)/'), $valueColorizer = new atoum\cli\colorizer('0;34'), $valueColorizer->setPattern('/(<[^>]+>(?:\\.\\.\\.)?)/'), $defaultHelpWriter = new writers\std\out(), $defaultHelpWriter->addDecorator($labelColorizer)->addDecorator($valueColorizer)->addDecorator($argumentColorizer)->addDecorator(new writer\decorators\rtrim())->addDecorator(new writer\decorators\eol())->addDecorator(new atoum\cli\clear()))->then->object($script->setHelpWriter())->isIdenticalTo($script)->object($script->getHelpWriter())->isEqualTo($defaultHelpWriter);
 }
Exemple #3
0
 public function testSetErrorWriter()
 {
     $this->given($runner = new testedClass(uniqid()))->then->object($runner->setErrorWriter($errorWriter = new atoum\writers\std\err()))->isIdenticalTo($runner)->object($runner->getErrorWriter())->isIdenticalTo($errorWriter)->given($colorizer = new cli\colorizer('0;31'), $colorizer->setPattern('/^([^:]+:)/'), $defaultErrorWriter = new atoum\writers\std\err(), $defaultErrorWriter->addDecorator(new writer\decorators\trim())->addDecorator(new writer\decorators\prompt($runner->getLocale()->_('Error: ')))->addDecorator(new writer\decorators\eol())->addDecorator(new atoum\cli\clear())->addDecorator($colorizer))->then->object($runner->setErrorWriter())->isIdenticalTo($runner)->object($runner->getErrorWriter())->isEqualTo($defaultErrorWriter);
 }
Exemple #4
0
 public function setHelpWriter(atoum\writer $writer = null)
 {
     if ($writer === null) {
         $labelColorizer = new cli\colorizer('0;32');
         $labelColorizer->setPattern('/(^[^:]+: )/');
         $argumentColorizer = new cli\colorizer('0;32');
         $argumentColorizer->setPattern('/((?:^| )[-+]+[-a-z]+)/');
         $valueColorizer = new cli\colorizer('0;34');
         $valueColorizer->setPattern('/(<[^>]+>(?:\\.\\.\\.)?)/');
         $writer = new writers\std\out();
         $writer->addDecorator($labelColorizer)->addDecorator($valueColorizer)->addDecorator($argumentColorizer)->addDecorator(new writer\decorators\rtrim())->addDecorator(new writer\decorators\eol())->addDecorator(new atoum\cli\clear());
     }
     $this->helpWriter = $writer;
     return $this;
 }
Exemple #5
0
 public function testSetErrorWriter()
 {
     $this->given($runner = new testedClass(uniqid()))->then->object($runner->setErrorWriter($errorWriter = new atoum\writers\std\err()))->isIdenticalTo($runner)->object($runner->getErrorWriter())->isIdenticalTo($errorWriter)->given($colorizer = new cli\colorizer('0;31'))->and($colorizer->setPattern('/^([^:]+:)/'))->and($defaultErrorWriter = new atoum\writers\std\err())->and($defaultErrorWriter->addDecorator($colorizer))->then->object($runner->setErrorWriter())->isIdenticalTo($runner)->object($runner->getErrorWriter())->isEqualTo($defaultErrorWriter);
 }
Exemple #6
0
 public function testColorize()
 {
     $this->if($colorizer = new cli\colorizer(null, null, $cli = new \mock\mageekguy\atoum\cli()))->and($this->calling($cli)->isTerminal = true)->then->string($colorizer->colorize($string = uniqid()))->isEqualTo($string)->if($colorizer = new cli\colorizer($foreground = uniqid(), null, $cli))->then->string($colorizer->colorize($string = uniqid()))->isEqualTo("[" . $foreground . 'm' . $string . "")->if($colorizer = new cli\colorizer($foreground = uniqid(), $background = uniqid(), $cli))->then->string($colorizer->colorize($string = uniqid()))->isEqualTo("[" . $foreground . 'm' . "[" . $background . 'm' . $string . "")->if($colorizer->setPattern('/^\\s*([^:]+:)/'))->then->string($colorizer->colorize('Error:' . ($string = uniqid())))->isEqualTo("[" . $foreground . 'm' . "[" . $background . 'mError:' . "" . $string)->if($colorizer = new cli\colorizer(null, $background = uniqid(), $cli))->then->string($colorizer->colorize($string = uniqid()))->isEqualTo("[" . $background . 'm' . $string . "")->if($colorizer = new cli\colorizer($foreground = uniqid(), $background = uniqid(), $cli))->and($this->calling($cli)->isTerminal = false)->then->string($colorizer->colorize($string = uniqid()))->isEqualTo($string)->if($colorizer->setPattern('/^\\s*([^:]+:)/'))->then->string($colorizer->colorize($string = 'Error:' . uniqid()))->isEqualTo($string);
 }