X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=vendor%2Fsymfony%2Fconsole%2FTests%2FLogger%2FConsoleLoggerTest.php;fp=vendor%2Fsymfony%2Fconsole%2FTests%2FLogger%2FConsoleLoggerTest.php;h=342992982aa50de6c9e5032b331acc681588b51d;hb=9917807b03b64faf00f6a1f29dcb6eafc454efa5;hp=dac911b2b4697904ecf9f93fc13b97d4ed2ad840;hpb=aea91e65e895364e460983b890e295aa5d5540a5;p=yaffs-website diff --git a/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php b/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php index dac911b2b..342992982 100644 --- a/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php +++ b/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php @@ -15,6 +15,7 @@ use PHPUnit\Framework\TestCase; use Psr\Log\LoggerInterface; use Psr\Log\LogLevel; use Symfony\Component\Console\Logger\ConsoleLogger; +use Symfony\Component\Console\Output\BufferedOutput; use Symfony\Component\Console\Tests\Fixtures\DummyOutput; use Symfony\Component\Console\Output\OutputInterface; @@ -60,6 +61,51 @@ class ConsoleLoggerTest extends TestCase return $this->output->getLogs(); } + /** + * @dataProvider provideOutputMappingParams + */ + public function testOutputMapping($logLevel, $outputVerbosity, $isOutput, $addVerbosityLevelMap = array()) + { + $out = new BufferedOutput($outputVerbosity); + $logger = new ConsoleLogger($out, $addVerbosityLevelMap); + $logger->log($logLevel, 'foo bar'); + $logs = $out->fetch(); + $this->assertEquals($isOutput ? "[$logLevel] foo bar".PHP_EOL : '', $logs); + } + + public function provideOutputMappingParams() + { + $quietMap = array(LogLevel::EMERGENCY => OutputInterface::VERBOSITY_QUIET); + + return array( + array(LogLevel::EMERGENCY, OutputInterface::VERBOSITY_NORMAL, true), + array(LogLevel::WARNING, OutputInterface::VERBOSITY_NORMAL, true), + array(LogLevel::INFO, OutputInterface::VERBOSITY_NORMAL, false), + array(LogLevel::DEBUG, OutputInterface::VERBOSITY_NORMAL, false), + array(LogLevel::INFO, OutputInterface::VERBOSITY_VERBOSE, false), + array(LogLevel::INFO, OutputInterface::VERBOSITY_VERY_VERBOSE, true), + array(LogLevel::DEBUG, OutputInterface::VERBOSITY_VERY_VERBOSE, false), + array(LogLevel::DEBUG, OutputInterface::VERBOSITY_DEBUG, true), + array(LogLevel::ALERT, OutputInterface::VERBOSITY_QUIET, false), + array(LogLevel::EMERGENCY, OutputInterface::VERBOSITY_QUIET, false), + array(LogLevel::ALERT, OutputInterface::VERBOSITY_QUIET, false, $quietMap), + array(LogLevel::EMERGENCY, OutputInterface::VERBOSITY_QUIET, true, $quietMap), + ); + } + + public function testHasErrored() + { + $logger = new ConsoleLogger(new BufferedOutput()); + + $this->assertFalse($logger->hasErrored()); + + $logger->warning('foo'); + $this->assertFalse($logger->hasErrored()); + + $logger->error('bar'); + $this->assertTrue($logger->hasErrored()); + } + public function testImplements() { $this->assertInstanceOf('Psr\Log\LoggerInterface', $this->getLogger());