]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - vendor/monolog/monolog/tests/Monolog/Handler/PsrHandlerTest.php
MediaWiki 1.30.2
[autoinstallsdev/mediawiki.git] / vendor / monolog / monolog / tests / Monolog / Handler / PsrHandlerTest.php
1 <?php
2
3 /*
4  * This file is part of the Monolog package.
5  *
6  * (c) Jordi Boggiano <j.boggiano@seld.be>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 namespace Monolog\Handler;
13
14 use Monolog\TestCase;
15 use Monolog\Logger;
16
17 /**
18  * @covers Monolog\Handler\PsrHandler::handle
19  */
20 class PsrHandlerTest extends TestCase
21 {
22     public function logLevelProvider()
23     {
24         $levels = array();
25         $monologLogger = new Logger('');
26
27         foreach ($monologLogger->getLevels() as $levelName => $level) {
28             $levels[] = array($levelName, $level);
29         }
30
31         return $levels;
32     }
33
34     /**
35      * @dataProvider logLevelProvider
36      */
37     public function testHandlesAllLevels($levelName, $level)
38     {
39         $message = 'Hello, world! ' . $level;
40         $context = array('foo' => 'bar', 'level' => $level);
41
42         $psrLogger = $this->getMock('Psr\Log\NullLogger');
43         $psrLogger->expects($this->once())
44             ->method('log')
45             ->with(strtolower($levelName), $message, $context);
46
47         $handler = new PsrHandler($psrLogger);
48         $handler->handle(array('level' => $level, 'level_name' => $levelName, 'message' => $message, 'context' => $context));
49     }
50 }