ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
Monolog\LoggerTest Class Reference
+ Inheritance diagram for Monolog\LoggerTest:
+ Collaboration diagram for Monolog\LoggerTest:

Public Member Functions

 testGetName ()
 @covers Monolog\Logger::getName More...
 
 testGetLevelName ()
 @covers Monolog\Logger::getLevelName More...
 
 testConvertPSR3ToMonologLevel ()
 @covers Monolog\Logger::toMonologLevel More...
 
 testGetLevelNameThrows ()
 @covers Monolog\Logger::getLevelName @expectedException InvalidArgumentException More...
 
 testChannel ()
 @covers Monolog\Logger::__construct More...
 
 testLog ()
 @covers Monolog\Logger::addRecord More...
 
 testLogNotHandled ()
 @covers Monolog\Logger::addRecord More...
 
 testHandlersInCtor ()
 
 testProcessorsInCtor ()
 
 testPushPopHandler ()
 @covers Monolog\Logger::pushHandler @covers Monolog\Logger::popHandler @expectedException LogicException More...
 
 testPushPopProcessor ()
 @covers Monolog\Logger::pushProcessor @covers Monolog\Logger::popProcessor @expectedException LogicException More...
 
 testPushProcessorWithNonCallable ()
 @covers Monolog\Logger::pushProcessor @expectedException InvalidArgumentException More...
 
 testProcessorsAreExecuted ()
 @covers Monolog\Logger::addRecord More...
 
 testProcessorsAreCalledOnlyOnce ()
 @covers Monolog\Logger::addRecord More...
 
 testProcessorsNotCalledWhenNotHandled ()
 @covers Monolog\Logger::addRecord More...
 
 testHandlersNotCalledBeforeFirstHandling ()
 @covers Monolog\Logger::addRecord More...
 
 testBubblingWhenTheHandlerReturnsFalse ()
 @covers Monolog\Logger::addRecord More...
 
 testNotBubblingWhenTheHandlerReturnsTrue ()
 @covers Monolog\Logger::addRecord More...
 
 testIsHandling ()
 @covers Monolog\Logger::isHandling More...
 
 testLogMethods ($method, $expectedLevel)
 @dataProvider logMethodProvider @covers Monolog\Logger::addDebug @covers Monolog\Logger::addInfo @covers Monolog\Logger::addNotice @covers Monolog\Logger::addWarning @covers Monolog\Logger::addError @covers Monolog\Logger::addCritical @covers Monolog\Logger::addAlert @covers Monolog\Logger::addEmergency @covers Monolog\Logger::debug @covers Monolog\Logger::info @covers Monolog\Logger::notice @covers Monolog\Logger::warn @covers Monolog\Logger::err @covers Monolog\Logger::crit @covers Monolog\Logger::alert @covers Monolog\Logger::emerg More...
 
 logMethodProvider ()
 
 testSetTimezone ($tz)
 @dataProvider setTimezoneProvider @covers Monolog\Logger::setTimezone More...
 
 setTimezoneProvider ()
 

Detailed Description

Definition at line 17 of file LoggerTest.php.

Member Function Documentation

◆ logMethodProvider()

Monolog\LoggerTest::logMethodProvider ( )

Definition at line 400 of file LoggerTest.php.

401 {
402 return array(
403 // monolog methods
404 array('addDebug', Logger::DEBUG),
405 array('addInfo', Logger::INFO),
406 array('addNotice', Logger::NOTICE),
407 array('addWarning', Logger::WARNING),
408 array('addError', Logger::ERROR),
409 array('addCritical', Logger::CRITICAL),
410 array('addAlert', Logger::ALERT),
411 array('addEmergency', Logger::EMERGENCY),
412
413 // ZF/Sf2 compat methods
414 array('debug', Logger::DEBUG),
415 array('info', Logger::INFO),
416 array('notice', Logger::NOTICE),
417 array('warn', Logger::WARNING),
418 array('err', Logger::ERROR),
419 array('crit', Logger::CRITICAL),
420 array('alert', Logger::ALERT),
421 array('emerg', Logger::EMERGENCY),
422 );
423 }
const EMERGENCY
Urgent alert.
Definition: Logger.php:77
const ERROR
Runtime errors.
Definition: Logger.php:57
const CRITICAL
Critical conditions.
Definition: Logger.php:64
const WARNING
Exceptional occurrences that are not errors.
Definition: Logger.php:52
const INFO
Interesting events.
Definition: Logger.php:39
const DEBUG
Detailed debug information.
Definition: Logger.php:32
const NOTICE
Uncommon events.
Definition: Logger.php:44
const ALERT
Action must be taken immediately.
Definition: Logger.php:72

References DEBUG.

◆ setTimezoneProvider()

Monolog\LoggerTest::setTimezoneProvider ( )

Definition at line 440 of file LoggerTest.php.

441 {
442 return array_map(
443 function ($tz) { return array(new \DateTimeZone($tz)); },
444 \DateTimeZone::listIdentifiers()
445 );
446 }

References $tz.

◆ testBubblingWhenTheHandlerReturnsFalse()

Monolog\LoggerTest::testBubblingWhenTheHandlerReturnsFalse ( )

@covers Monolog\Logger::addRecord

Definition at line 285 of file LoggerTest.php.

286 {
287 $logger = new Logger(__METHOD__);
288
289 $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
290 $handler1->expects($this->any())
291 ->method('isHandling')
292 ->will($this->returnValue(true))
293 ;
294 $handler1->expects($this->once())
295 ->method('handle')
296 ->will($this->returnValue(false))
297 ;
298 $logger->pushHandler($handler1);
299
300 $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
301 $handler2->expects($this->any())
302 ->method('isHandling')
303 ->will($this->returnValue(true))
304 ;
305 $handler2->expects($this->once())
306 ->method('handle')
307 ->will($this->returnValue(false))
308 ;
309 $logger->pushHandler($handler2);
310
311 $logger->debug('test');
312 }

◆ testChannel()

Monolog\LoggerTest::testChannel ( )

@covers Monolog\Logger::__construct

Definition at line 63 of file LoggerTest.php.

64 {
65 $logger = new Logger('foo');
66 $handler = new TestHandler;
67 $logger->pushHandler($handler);
68 $logger->addWarning('test');
69 list($record) = $handler->getRecords();
70 $this->assertEquals('foo', $record['channel']);
71 }

References Monolog\Handler\TestHandler\getRecords().

+ Here is the call graph for this function:

◆ testConvertPSR3ToMonologLevel()

Monolog\LoggerTest::testConvertPSR3ToMonologLevel ( )

@covers Monolog\Logger::toMonologLevel

Definition at line 39 of file LoggerTest.php.

40 {
41 $this->assertEquals(Logger::toMonologLevel('debug'), 100);
42 $this->assertEquals(Logger::toMonologLevel('info'), 200);
43 $this->assertEquals(Logger::toMonologLevel('notice'), 250);
44 $this->assertEquals(Logger::toMonologLevel('warning'), 300);
45 $this->assertEquals(Logger::toMonologLevel('error'), 400);
46 $this->assertEquals(Logger::toMonologLevel('critical'), 500);
47 $this->assertEquals(Logger::toMonologLevel('alert'), 550);
48 $this->assertEquals(Logger::toMonologLevel('emergency'), 600);
49 }
static toMonologLevel($level)
Converts PSR-3 levels to Monolog ones if necessary.
Definition: Logger.php:403

◆ testGetLevelName()

Monolog\LoggerTest::testGetLevelName ( )

@covers Monolog\Logger::getLevelName

Definition at line 31 of file LoggerTest.php.

32 {
33 $this->assertEquals('ERROR', Logger::getLevelName(Logger::ERROR));
34 }
static getLevelName($level)
Gets the name of the logging level.
Definition: Logger.php:388

◆ testGetLevelNameThrows()

Monolog\LoggerTest::testGetLevelNameThrows ( )

@covers Monolog\Logger::getLevelName @expectedException InvalidArgumentException

Definition at line 55 of file LoggerTest.php.

56 {
58 }

◆ testGetName()

Monolog\LoggerTest::testGetName ( )

@covers Monolog\Logger::getName

Definition at line 22 of file LoggerTest.php.

23 {
24 $logger = new Logger('foo');
25 $this->assertEquals('foo', $logger->getName());
26 }

◆ testHandlersInCtor()

Monolog\LoggerTest::testHandlersInCtor ( )

Definition at line 103 of file LoggerTest.php.

104 {
105 $handler1 = new TestHandler;
106 $handler2 = new TestHandler;
107 $logger = new Logger(__METHOD__, array($handler1, $handler2));
108
109 $this->assertEquals($handler1, $logger->popHandler());
110 $this->assertEquals($handler2, $logger->popHandler());
111 }

◆ testHandlersNotCalledBeforeFirstHandling()

Monolog\LoggerTest::testHandlersNotCalledBeforeFirstHandling ( )

@covers Monolog\Logger::addRecord

Definition at line 243 of file LoggerTest.php.

244 {
245 $logger = new Logger(__METHOD__);
246
247 $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
248 $handler1->expects($this->never())
249 ->method('isHandling')
250 ->will($this->returnValue(false))
251 ;
252 $handler1->expects($this->once())
253 ->method('handle')
254 ->will($this->returnValue(false))
255 ;
256 $logger->pushHandler($handler1);
257
258 $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
259 $handler2->expects($this->once())
260 ->method('isHandling')
261 ->will($this->returnValue(true))
262 ;
263 $handler2->expects($this->once())
264 ->method('handle')
265 ->will($this->returnValue(false))
266 ;
267 $logger->pushHandler($handler2);
268
269 $handler3 = $this->getMock('Monolog\Handler\HandlerInterface');
270 $handler3->expects($this->once())
271 ->method('isHandling')
272 ->will($this->returnValue(false))
273 ;
274 $handler3->expects($this->never())
275 ->method('handle')
276 ;
277 $logger->pushHandler($handler3);
278
279 $logger->debug('test');
280 }

◆ testIsHandling()

Monolog\LoggerTest::testIsHandling ( )

@covers Monolog\Logger::isHandling

Definition at line 348 of file LoggerTest.php.

349 {
350 $logger = new Logger(__METHOD__);
351
352 $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
353 $handler1->expects($this->any())
354 ->method('isHandling')
355 ->will($this->returnValue(false))
356 ;
357
358 $logger->pushHandler($handler1);
359 $this->assertFalse($logger->isHandling(Logger::DEBUG));
360
361 $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
362 $handler2->expects($this->any())
363 ->method('isHandling')
364 ->will($this->returnValue(true))
365 ;
366
367 $logger->pushHandler($handler2);
368 $this->assertTrue($logger->isHandling(Logger::DEBUG));
369 }

References DEBUG.

◆ testLog()

Monolog\LoggerTest::testLog ( )

@covers Monolog\Logger::addRecord

Definition at line 76 of file LoggerTest.php.

77 {
78 $logger = new Logger(__METHOD__);
79
80 $handler = $this->getMock('Monolog\Handler\NullHandler', array('handle'));
81 $handler->expects($this->once())
82 ->method('handle');
83 $logger->pushHandler($handler);
84
85 $this->assertTrue($logger->addWarning('test'));
86 }

◆ testLogMethods()

Monolog\LoggerTest::testLogMethods (   $method,
  $expectedLevel 
)

@dataProvider logMethodProvider @covers Monolog\Logger::addDebug @covers Monolog\Logger::addInfo @covers Monolog\Logger::addNotice @covers Monolog\Logger::addWarning @covers Monolog\Logger::addError @covers Monolog\Logger::addCritical @covers Monolog\Logger::addAlert @covers Monolog\Logger::addEmergency @covers Monolog\Logger::debug @covers Monolog\Logger::info @covers Monolog\Logger::notice @covers Monolog\Logger::warn @covers Monolog\Logger::err @covers Monolog\Logger::crit @covers Monolog\Logger::alert @covers Monolog\Logger::emerg

Definition at line 390 of file LoggerTest.php.

391 {
392 $logger = new Logger('foo');
393 $handler = new TestHandler;
394 $logger->pushHandler($handler);
395 $logger->{$method}('test');
396 list($record) = $handler->getRecords();
397 $this->assertEquals($expectedLevel, $record['level']);
398 }

◆ testLogNotHandled()

Monolog\LoggerTest::testLogNotHandled ( )

@covers Monolog\Logger::addRecord

Definition at line 91 of file LoggerTest.php.

92 {
93 $logger = new Logger(__METHOD__);
94
95 $handler = $this->getMock('Monolog\Handler\NullHandler', array('handle'), array(Logger::ERROR));
96 $handler->expects($this->never())
97 ->method('handle');
98 $logger->pushHandler($handler);
99
100 $this->assertFalse($logger->addWarning('test'));
101 }

◆ testNotBubblingWhenTheHandlerReturnsTrue()

Monolog\LoggerTest::testNotBubblingWhenTheHandlerReturnsTrue ( )

@covers Monolog\Logger::addRecord

Definition at line 317 of file LoggerTest.php.

318 {
319 $logger = new Logger(__METHOD__);
320
321 $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
322 $handler1->expects($this->any())
323 ->method('isHandling')
324 ->will($this->returnValue(true))
325 ;
326 $handler1->expects($this->never())
327 ->method('handle')
328 ;
329 $logger->pushHandler($handler1);
330
331 $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
332 $handler2->expects($this->any())
333 ->method('isHandling')
334 ->will($this->returnValue(true))
335 ;
336 $handler2->expects($this->once())
337 ->method('handle')
338 ->will($this->returnValue(true))
339 ;
340 $logger->pushHandler($handler2);
341
342 $logger->debug('test');
343 }

◆ testProcessorsAreCalledOnlyOnce()

Monolog\LoggerTest::testProcessorsAreCalledOnlyOnce ( )

@covers Monolog\Logger::addRecord

Definition at line 193 of file LoggerTest.php.

194 {
195 $logger = new Logger(__METHOD__);
196 $handler = $this->getMock('Monolog\Handler\HandlerInterface');
197 $handler->expects($this->any())
198 ->method('isHandling')
199 ->will($this->returnValue(true))
200 ;
201 $handler->expects($this->any())
202 ->method('handle')
203 ->will($this->returnValue(true))
204 ;
205 $logger->pushHandler($handler);
206
207 $processor = $this->getMockBuilder('Monolog\Processor\WebProcessor')
208 ->disableOriginalConstructor()
209 ->setMethods(array('__invoke'))
210 ->getMock()
211 ;
212 $processor->expects($this->once())
213 ->method('__invoke')
214 ->will($this->returnArgument(0))
215 ;
216 $logger->pushProcessor($processor);
217
218 $logger->addError('test');
219 }

◆ testProcessorsAreExecuted()

Monolog\LoggerTest::testProcessorsAreExecuted ( )

@covers Monolog\Logger::addRecord

Definition at line 175 of file LoggerTest.php.

176 {
177 $logger = new Logger(__METHOD__);
178 $handler = new TestHandler;
179 $logger->pushHandler($handler);
180 $logger->pushProcessor(function ($record) {
181 $record['extra']['win'] = true;
182
183 return $record;
184 });
185 $logger->addError('test');
186 list($record) = $handler->getRecords();
187 $this->assertTrue($record['extra']['win']);
188 }

References Monolog\Handler\AbstractHandler\pushProcessor().

+ Here is the call graph for this function:

◆ testProcessorsInCtor()

Monolog\LoggerTest::testProcessorsInCtor ( )

Definition at line 113 of file LoggerTest.php.

114 {
115 $processor1 = new WebProcessor;
116 $processor2 = new WebProcessor;
117 $logger = new Logger(__METHOD__, array(), array($processor1, $processor2));
118
119 $this->assertEquals($processor1, $logger->popProcessor());
120 $this->assertEquals($processor2, $logger->popProcessor());
121 }

◆ testProcessorsNotCalledWhenNotHandled()

Monolog\LoggerTest::testProcessorsNotCalledWhenNotHandled ( )

@covers Monolog\Logger::addRecord

Definition at line 224 of file LoggerTest.php.

225 {
226 $logger = new Logger(__METHOD__);
227 $handler = $this->getMock('Monolog\Handler\HandlerInterface');
228 $handler->expects($this->once())
229 ->method('isHandling')
230 ->will($this->returnValue(false))
231 ;
232 $logger->pushHandler($handler);
233 $that = $this;
234 $logger->pushProcessor(function ($record) use ($that) {
235 $that->fail('The processor should not be called');
236 });
237 $logger->addAlert('test');
238 }

◆ testPushPopHandler()

Monolog\LoggerTest::testPushPopHandler ( )

@covers Monolog\Logger::pushHandler @covers Monolog\Logger::popHandler @expectedException LogicException

Definition at line 128 of file LoggerTest.php.

129 {
130 $logger = new Logger(__METHOD__);
131 $handler1 = new TestHandler;
132 $handler2 = new TestHandler;
133
134 $logger->pushHandler($handler1);
135 $logger->pushHandler($handler2);
136
137 $this->assertEquals($handler2, $logger->popHandler());
138 $this->assertEquals($handler1, $logger->popHandler());
139 $logger->popHandler();
140 }

◆ testPushPopProcessor()

Monolog\LoggerTest::testPushPopProcessor ( )

@covers Monolog\Logger::pushProcessor @covers Monolog\Logger::popProcessor @expectedException LogicException

Definition at line 147 of file LoggerTest.php.

148 {
149 $logger = new Logger(__METHOD__);
150 $processor1 = new WebProcessor;
151 $processor2 = new WebProcessor;
152
153 $logger->pushProcessor($processor1);
154 $logger->pushProcessor($processor2);
155
156 $this->assertEquals($processor2, $logger->popProcessor());
157 $this->assertEquals($processor1, $logger->popProcessor());
158 $logger->popProcessor();
159 }

◆ testPushProcessorWithNonCallable()

Monolog\LoggerTest::testPushProcessorWithNonCallable ( )

@covers Monolog\Logger::pushProcessor @expectedException InvalidArgumentException

Definition at line 165 of file LoggerTest.php.

166 {
167 $logger = new Logger(__METHOD__);
168
169 $logger->pushProcessor(new \stdClass());
170 }

◆ testSetTimezone()

Monolog\LoggerTest::testSetTimezone (   $tz)

@dataProvider setTimezoneProvider @covers Monolog\Logger::setTimezone

Definition at line 429 of file LoggerTest.php.

430 {
432 $logger = new Logger('foo');
433 $handler = new TestHandler;
434 $logger->pushHandler($handler);
435 $logger->info('test');
436 list($record) = $handler->getRecords();
437 $this->assertEquals($tz, $record['datetime']->getTimezone());
438 }
static setTimezone(\DateTimeZone $tz)
Set the timezone to be used for the timestamp of log records.
Definition: Logger.php:625

References $tz, and Monolog\Handler\TestHandler\getRecords().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: