ILIAS  release_5-2 Revision v5.2.25-18-g3f80b82851
Monolog\LoggerTest Class Reference
+ Inheritance diagram for Monolog\LoggerTest:
+ Collaboration diagram for Monolog\LoggerTest:

Public Member Functions

 testGetName ()
 Monolog::getName More...
 
 testGetLevelName ()
 Monolog::getLevelName More...
 
 testWithName ()
 Monolog::withName More...
 
 testConvertPSR3ToMonologLevel ()
 Monolog::toMonologLevel More...
 
 testGetLevelNameThrows ()
 Monolog::getLevelName InvalidArgumentException More...
 
 testChannel ()
 Monolog::__construct More...
 
 testLog ()
 Monolog::addRecord More...
 
 testLogNotHandled ()
 Monolog::addRecord More...
 
 testHandlersInCtor ()
 
 testProcessorsInCtor ()
 
 testPushPopHandler ()
 Monolog::pushHandler Monolog::popHandler LogicException More...
 
 testSetHandlers ()
 Monolog::setHandlers More...
 
 testPushPopProcessor ()
 Monolog::pushProcessor Monolog::popProcessor LogicException More...
 
 testPushProcessorWithNonCallable ()
 Monolog::pushProcessor InvalidArgumentException More...
 
 testProcessorsAreExecuted ()
 Monolog::addRecord More...
 
 testProcessorsAreCalledOnlyOnce ()
 Monolog::addRecord More...
 
 testProcessorsNotCalledWhenNotHandled ()
 Monolog::addRecord More...
 
 testHandlersNotCalledBeforeFirstHandling ()
 Monolog::addRecord More...
 
 testHandlersNotCalledBeforeFirstHandlingWithAssocArray ()
 Monolog::addRecord More...
 
 testBubblingWhenTheHandlerReturnsFalse ()
 Monolog::addRecord More...
 
 testNotBubblingWhenTheHandlerReturnsTrue ()
 Monolog::addRecord More...
 
 testIsHandling ()
 Monolog::isHandling More...
 
 testLogMethods ($method, $expectedLevel)
 logMethodProvider Monolog::addDebug Monolog::addInfo Monolog::addNotice Monolog::addWarning Monolog::addError Monolog::addCritical Monolog::addAlert Monolog::addEmergency Monolog::debug Monolog::info Monolog::notice Monolog::warn Monolog::err Monolog::crit Monolog::alert Monolog::emerg More...
 
 logMethodProvider ()
 
 testSetTimezone ($tz)
 setTimezoneProvider Monolog::setTimezone More...
 
 setTimezoneProvider ()
 
 testUseMicrosecondTimestamps ($micro, $assert)
 useMicrosecondTimestampsProvider Monolog::useMicrosecondTimestamps Monolog::addRecord More...
 
 useMicrosecondTimestampsProvider ()
 

Detailed Description

Definition at line 17 of file LoggerTest.php.

Member Function Documentation

◆ logMethodProvider()

Monolog\LoggerTest::logMethodProvider ( )

Definition at line 476 of file LoggerTest.php.

References array, and DEBUG.

477  {
478  return array(
479  // monolog methods
480  array('addDebug', Logger::DEBUG),
481  array('addInfo', Logger::INFO),
482  array('addNotice', Logger::NOTICE),
483  array('addWarning', Logger::WARNING),
484  array('addError', Logger::ERROR),
485  array('addCritical', Logger::CRITICAL),
486  array('addAlert', Logger::ALERT),
487  array('addEmergency', Logger::EMERGENCY),
488 
489  // ZF/Sf2 compat methods
490  array('debug', Logger::DEBUG),
491  array('info', Logger::INFO),
492  array('notice', Logger::NOTICE),
493  array('warn', Logger::WARNING),
494  array('err', Logger::ERROR),
495  array('crit', Logger::CRITICAL),
496  array('alert', Logger::ALERT),
497  array('emerg', Logger::EMERGENCY),
498  );
499  }
const NOTICE
Uncommon events.
Definition: Logger.php:44
const DEBUG
Detailed debug information.
Definition: Logger.php:32
const ERROR
Runtime errors.
Definition: Logger.php:57
const WARNING
Exceptional occurrences that are not errors.
Definition: Logger.php:52
const EMERGENCY
Urgent alert.
Definition: Logger.php:77
Create styles array
The data for the language used.
const CRITICAL
Critical conditions.
Definition: Logger.php:64
const ALERT
Action must be taken immediately.
Definition: Logger.php:72
const INFO
Interesting events.
Definition: Logger.php:39

◆ setTimezoneProvider()

Monolog\LoggerTest::setTimezoneProvider ( )

Definition at line 516 of file LoggerTest.php.

References $tz, and array.

517  {
518  return array_map(
519  function ($tz) { return array(new \DateTimeZone($tz)); },
520  \DateTimeZone::listIdentifiers()
521  );
522  }
Create styles array
The data for the language used.

◆ testBubblingWhenTheHandlerReturnsFalse()

Monolog\LoggerTest::testBubblingWhenTheHandlerReturnsFalse ( )

Monolog::addRecord

Definition at line 361 of file LoggerTest.php.

362  {
363  $logger = new Logger(__METHOD__);
364 
365  $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
366  $handler1->expects($this->any())
367  ->method('isHandling')
368  ->will($this->returnValue(true))
369  ;
370  $handler1->expects($this->once())
371  ->method('handle')
372  ->will($this->returnValue(false))
373  ;
374  $logger->pushHandler($handler1);
375 
376  $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
377  $handler2->expects($this->any())
378  ->method('isHandling')
379  ->will($this->returnValue(true))
380  ;
381  $handler2->expects($this->once())
382  ->method('handle')
383  ->will($this->returnValue(false))
384  ;
385  $logger->pushHandler($handler2);
386 
387  $logger->debug('test');
388  }

◆ testChannel()

Monolog\LoggerTest::testChannel ( )

Monolog::__construct

Definition at line 76 of file LoggerTest.php.

References Monolog\Handler\TestHandler\getRecords().

77  {
78  $logger = new Logger('foo');
79  $handler = new TestHandler;
80  $logger->pushHandler($handler);
81  $logger->addWarning('test');
82  list($record) = $handler->getRecords();
83  $this->assertEquals('foo', $record['channel']);
84  }
+ Here is the call graph for this function:

◆ testConvertPSR3ToMonologLevel()

Monolog\LoggerTest::testConvertPSR3ToMonologLevel ( )

Monolog::toMonologLevel

Definition at line 52 of file LoggerTest.php.

53  {
54  $this->assertEquals(Logger::toMonologLevel('debug'), 100);
55  $this->assertEquals(Logger::toMonologLevel('info'), 200);
56  $this->assertEquals(Logger::toMonologLevel('notice'), 250);
57  $this->assertEquals(Logger::toMonologLevel('warning'), 300);
58  $this->assertEquals(Logger::toMonologLevel('error'), 400);
59  $this->assertEquals(Logger::toMonologLevel('critical'), 500);
60  $this->assertEquals(Logger::toMonologLevel('alert'), 550);
61  $this->assertEquals(Logger::toMonologLevel('emergency'), 600);
62  }
static toMonologLevel($level)
Converts PSR-3 levels to Monolog ones if necessary.
Definition: Logger.php:473

◆ testGetLevelName()

Monolog\LoggerTest::testGetLevelName ( )

Monolog::getLevelName

Definition at line 31 of file LoggerTest.php.

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

◆ testGetLevelNameThrows()

Monolog\LoggerTest::testGetLevelNameThrows ( )

Monolog::getLevelName InvalidArgumentException

Definition at line 68 of file LoggerTest.php.

69  {
71  }
static getLevelName($level)
Gets the name of the logging level.
Definition: Logger.php:458

◆ testGetName()

Monolog\LoggerTest::testGetName ( )

Monolog::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 116 of file LoggerTest.php.

References array.

117  {
118  $handler1 = new TestHandler;
119  $handler2 = new TestHandler;
120  $logger = new Logger(__METHOD__, array($handler1, $handler2));
121 
122  $this->assertEquals($handler1, $logger->popHandler());
123  $this->assertEquals($handler2, $logger->popHandler());
124  }
Create styles array
The data for the language used.

◆ testHandlersNotCalledBeforeFirstHandling()

Monolog\LoggerTest::testHandlersNotCalledBeforeFirstHandling ( )

Monolog::addRecord

Definition at line 280 of file LoggerTest.php.

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

◆ testHandlersNotCalledBeforeFirstHandlingWithAssocArray()

Monolog\LoggerTest::testHandlersNotCalledBeforeFirstHandlingWithAssocArray ( )

Monolog::addRecord

Definition at line 322 of file LoggerTest.php.

References array.

323  {
324  $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
325  $handler1->expects($this->never())
326  ->method('isHandling')
327  ->will($this->returnValue(false))
328  ;
329  $handler1->expects($this->once())
330  ->method('handle')
331  ->will($this->returnValue(false))
332  ;
333 
334  $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
335  $handler2->expects($this->once())
336  ->method('isHandling')
337  ->will($this->returnValue(true))
338  ;
339  $handler2->expects($this->once())
340  ->method('handle')
341  ->will($this->returnValue(false))
342  ;
343 
344  $handler3 = $this->getMock('Monolog\Handler\HandlerInterface');
345  $handler3->expects($this->once())
346  ->method('isHandling')
347  ->will($this->returnValue(false))
348  ;
349  $handler3->expects($this->never())
350  ->method('handle')
351  ;
352 
353  $logger = new Logger(__METHOD__, array('last' => $handler3, 'second' => $handler2, 'first' => $handler1));
354 
355  $logger->debug('test');
356  }
Create styles array
The data for the language used.

◆ testIsHandling()

Monolog\LoggerTest::testIsHandling ( )

Monolog::isHandling

Definition at line 424 of file LoggerTest.php.

References DEBUG.

425  {
426  $logger = new Logger(__METHOD__);
427 
428  $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
429  $handler1->expects($this->any())
430  ->method('isHandling')
431  ->will($this->returnValue(false))
432  ;
433 
434  $logger->pushHandler($handler1);
435  $this->assertFalse($logger->isHandling(Logger::DEBUG));
436 
437  $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
438  $handler2->expects($this->any())
439  ->method('isHandling')
440  ->will($this->returnValue(true))
441  ;
442 
443  $logger->pushHandler($handler2);
444  $this->assertTrue($logger->isHandling(Logger::DEBUG));
445  }
const DEBUG
Detailed debug information.
Definition: Logger.php:32

◆ testLog()

Monolog\LoggerTest::testLog ( )

Monolog::addRecord

Definition at line 89 of file LoggerTest.php.

References array.

90  {
91  $logger = new Logger(__METHOD__);
92 
93  $handler = $this->getMock('Monolog\Handler\NullHandler', array('handle'));
94  $handler->expects($this->once())
95  ->method('handle');
96  $logger->pushHandler($handler);
97 
98  $this->assertTrue($logger->addWarning('test'));
99  }
Create styles array
The data for the language used.

◆ testLogMethods()

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

logMethodProvider Monolog::addDebug Monolog::addInfo Monolog::addNotice Monolog::addWarning Monolog::addError Monolog::addCritical Monolog::addAlert Monolog::addEmergency Monolog::debug Monolog::info Monolog::notice Monolog::warn Monolog::err Monolog::crit Monolog::alert Monolog::emerg

Definition at line 466 of file LoggerTest.php.

References Monolog\Handler\TestHandler\getRecords().

467  {
468  $logger = new Logger('foo');
469  $handler = new TestHandler;
470  $logger->pushHandler($handler);
471  $logger->{$method}('test');
472  list($record) = $handler->getRecords();
473  $this->assertEquals($expectedLevel, $record['level']);
474  }
+ Here is the call graph for this function:

◆ testLogNotHandled()

Monolog\LoggerTest::testLogNotHandled ( )

Monolog::addRecord

Definition at line 104 of file LoggerTest.php.

References array.

105  {
106  $logger = new Logger(__METHOD__);
107 
108  $handler = $this->getMock('Monolog\Handler\NullHandler', array('handle'), array(Logger::ERROR));
109  $handler->expects($this->never())
110  ->method('handle');
111  $logger->pushHandler($handler);
112 
113  $this->assertFalse($logger->addWarning('test'));
114  }
const ERROR
Runtime errors.
Definition: Logger.php:57
Create styles array
The data for the language used.

◆ testNotBubblingWhenTheHandlerReturnsTrue()

Monolog\LoggerTest::testNotBubblingWhenTheHandlerReturnsTrue ( )

Monolog::addRecord

Definition at line 393 of file LoggerTest.php.

394  {
395  $logger = new Logger(__METHOD__);
396 
397  $handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
398  $handler1->expects($this->any())
399  ->method('isHandling')
400  ->will($this->returnValue(true))
401  ;
402  $handler1->expects($this->never())
403  ->method('handle')
404  ;
405  $logger->pushHandler($handler1);
406 
407  $handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
408  $handler2->expects($this->any())
409  ->method('isHandling')
410  ->will($this->returnValue(true))
411  ;
412  $handler2->expects($this->once())
413  ->method('handle')
414  ->will($this->returnValue(true))
415  ;
416  $logger->pushHandler($handler2);
417 
418  $logger->debug('test');
419  }

◆ testProcessorsAreCalledOnlyOnce()

Monolog\LoggerTest::testProcessorsAreCalledOnlyOnce ( )

Monolog::addRecord

Definition at line 230 of file LoggerTest.php.

References array.

231  {
232  $logger = new Logger(__METHOD__);
233  $handler = $this->getMock('Monolog\Handler\HandlerInterface');
234  $handler->expects($this->any())
235  ->method('isHandling')
236  ->will($this->returnValue(true))
237  ;
238  $handler->expects($this->any())
239  ->method('handle')
240  ->will($this->returnValue(true))
241  ;
242  $logger->pushHandler($handler);
243 
244  $processor = $this->getMockBuilder('Monolog\Processor\WebProcessor')
245  ->disableOriginalConstructor()
246  ->setMethods(array('__invoke'))
247  ->getMock()
248  ;
249  $processor->expects($this->once())
250  ->method('__invoke')
251  ->will($this->returnArgument(0))
252  ;
253  $logger->pushProcessor($processor);
254 
255  $logger->addError('test');
256  }
Create styles array
The data for the language used.

◆ testProcessorsAreExecuted()

Monolog\LoggerTest::testProcessorsAreExecuted ( )

Monolog::addRecord

Definition at line 212 of file LoggerTest.php.

References Monolog\Handler\AbstractHandler\pushProcessor().

213  {
214  $logger = new Logger(__METHOD__);
215  $handler = new TestHandler;
216  $logger->pushHandler($handler);
217  $logger->pushProcessor(function ($record) {
218  $record['extra']['win'] = true;
219 
220  return $record;
221  });
222  $logger->addError('test');
223  list($record) = $handler->getRecords();
224  $this->assertTrue($record['extra']['win']);
225  }
+ Here is the call graph for this function:

◆ testProcessorsInCtor()

Monolog\LoggerTest::testProcessorsInCtor ( )

Definition at line 126 of file LoggerTest.php.

References array.

127  {
128  $processor1 = new WebProcessor;
129  $processor2 = new WebProcessor;
130  $logger = new Logger(__METHOD__, array(), array($processor1, $processor2));
131 
132  $this->assertEquals($processor1, $logger->popProcessor());
133  $this->assertEquals($processor2, $logger->popProcessor());
134  }
Create styles array
The data for the language used.

◆ testProcessorsNotCalledWhenNotHandled()

Monolog\LoggerTest::testProcessorsNotCalledWhenNotHandled ( )

Monolog::addRecord

Definition at line 261 of file LoggerTest.php.

262  {
263  $logger = new Logger(__METHOD__);
264  $handler = $this->getMock('Monolog\Handler\HandlerInterface');
265  $handler->expects($this->once())
266  ->method('isHandling')
267  ->will($this->returnValue(false))
268  ;
269  $logger->pushHandler($handler);
270  $that = $this;
271  $logger->pushProcessor(function ($record) use ($that) {
272  $that->fail('The processor should not be called');
273  });
274  $logger->addAlert('test');
275  }

◆ testPushPopHandler()

Monolog\LoggerTest::testPushPopHandler ( )

Monolog::pushHandler Monolog::popHandler LogicException

Definition at line 141 of file LoggerTest.php.

142  {
143  $logger = new Logger(__METHOD__);
144  $handler1 = new TestHandler;
145  $handler2 = new TestHandler;
146 
147  $logger->pushHandler($handler1);
148  $logger->pushHandler($handler2);
149 
150  $this->assertEquals($handler2, $logger->popHandler());
151  $this->assertEquals($handler1, $logger->popHandler());
152  $logger->popHandler();
153  }

◆ testPushPopProcessor()

Monolog\LoggerTest::testPushPopProcessor ( )

Monolog::pushProcessor Monolog::popProcessor LogicException

Definition at line 184 of file LoggerTest.php.

185  {
186  $logger = new Logger(__METHOD__);
187  $processor1 = new WebProcessor;
188  $processor2 = new WebProcessor;
189 
190  $logger->pushProcessor($processor1);
191  $logger->pushProcessor($processor2);
192 
193  $this->assertEquals($processor2, $logger->popProcessor());
194  $this->assertEquals($processor1, $logger->popProcessor());
195  $logger->popProcessor();
196  }

◆ testPushProcessorWithNonCallable()

Monolog\LoggerTest::testPushProcessorWithNonCallable ( )

Monolog::pushProcessor InvalidArgumentException

Definition at line 202 of file LoggerTest.php.

203  {
204  $logger = new Logger(__METHOD__);
205 
206  $logger->pushProcessor(new \stdClass());
207  }

◆ testSetHandlers()

Monolog\LoggerTest::testSetHandlers ( )

Monolog::setHandlers

Definition at line 158 of file LoggerTest.php.

References array.

159  {
160  $logger = new Logger(__METHOD__);
161  $handler1 = new TestHandler;
162  $handler2 = new TestHandler;
163 
164  $logger->pushHandler($handler1);
165  $logger->setHandlers(array($handler2));
166 
167  // handler1 has been removed
168  $this->assertEquals(array($handler2), $logger->getHandlers());
169 
170  $logger->setHandlers(array(
171  "AMapKey" => $handler1,
172  "Woop" => $handler2,
173  ));
174 
175  // Keys have been scrubbed
176  $this->assertEquals(array($handler1, $handler2), $logger->getHandlers());
177  }
Create styles array
The data for the language used.

◆ testSetTimezone()

Monolog\LoggerTest::testSetTimezone (   $tz)

setTimezoneProvider Monolog::setTimezone

Definition at line 505 of file LoggerTest.php.

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

506  {
508  $logger = new Logger('foo');
509  $handler = new TestHandler;
510  $logger->pushHandler($handler);
511  $logger->info('test');
512  list($record) = $handler->getRecords();
513  $this->assertEquals($tz, $record['datetime']->getTimezone());
514  }
static setTimezone(\DateTimeZone $tz)
Set the timezone to be used for the timestamp of log records.
Definition: Logger.php:695
+ Here is the call graph for this function:

◆ testUseMicrosecondTimestamps()

Monolog\LoggerTest::testUseMicrosecondTimestamps (   $micro,
  $assert 
)

useMicrosecondTimestampsProvider Monolog::useMicrosecondTimestamps Monolog::addRecord

Definition at line 529 of file LoggerTest.php.

References Monolog\Handler\TestHandler\getRecords().

530  {
531  $logger = new Logger('foo');
532  $logger->useMicrosecondTimestamps($micro);
533  $handler = new TestHandler;
534  $logger->pushHandler($handler);
535  $logger->info('test');
536  list($record) = $handler->getRecords();
537  $this->{$assert}('000000', $record['datetime']->format('u'));
538  }
+ Here is the call graph for this function:

◆ testWithName()

Monolog\LoggerTest::testWithName ( )

Monolog::withName

Definition at line 39 of file LoggerTest.php.

References array.

40  {
41  $first = new Logger('first', array($handler = new TestHandler()));
42  $second = $first->withName('second');
43 
44  $this->assertSame('first', $first->getName());
45  $this->assertSame('second', $second->getName());
46  $this->assertSame($handler, $second->popHandler());
47  }
Create styles array
The data for the language used.

◆ useMicrosecondTimestampsProvider()

Monolog\LoggerTest::useMicrosecondTimestampsProvider ( )

Definition at line 540 of file LoggerTest.php.

References array.

541  {
542  return array(
543  // this has a very small chance of a false negative (1/10^6)
544  'with microseconds' => array(true, 'assertNotSame'),
545  'without microseconds' => array(false, 'assertSame'),
546  );
547  }
Create styles array
The data for the language used.

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