layout->format($event); } } class LoggerLoggingEventTestCaseLayout extends LoggerLayout { public function activateOptions() { return; } public function format(LoggerLoggingEvent $event) { LoggerLoggingEventTest::$locationInfo = $event->getLocationInformation(); LoggerLoggingEventTest::$throwableInfo = $event->getThrowableInformation(); } } /** * @group main */ class LoggerLoggingEventTest extends PHPUnit_Framework_TestCase { public static $locationInfo; public static $throwableInfo; public function testConstructWithLoggerName() { $l = LoggerLevel :: getLevelDebug(); $e = new LoggerLoggingEvent('fqcn', 'TestLogger', $l, 'test'); self::assertEquals($e->getLoggerName(), 'TestLogger'); } public function testConstructWithTimestamp() { $l = LoggerLevel :: getLevelDebug(); $timestamp = microtime(true); $e = new LoggerLoggingEvent('fqcn', 'TestLogger', $l, 'test', $timestamp); self::assertEquals($e->getTimeStamp(), $timestamp); } public function testGetStartTime() { $time = LoggerLoggingEvent :: getStartTime(); self::assertInternalType('float', $time); $time2 = LoggerLoggingEvent :: getStartTime(); self::assertEquals($time, $time2); } public function testGetLocationInformation() { $hierarchy = Logger::getHierarchy(); $root = $hierarchy->getRootLogger(); $a = new LoggerLoggingEventTestCaseAppender('A1'); $a->setLayout( new LoggerLoggingEventTestCaseLayout() ); $root->addAppender($a); $logger = $hierarchy->getLogger('test'); $line = __LINE__; $logger->debug('test'); $hierarchy->shutdown(); $li = self::$locationInfo; self::assertEquals($li->getClassName(), get_class($this)); self::assertEquals($li->getFileName(), __FILE__); self::assertEquals($li->getLineNumber(), $line); self::assertEquals($li->getMethodName(), __FUNCTION__); } public function testGetThrowableInformation1() { $hierarchy = Logger::getHierarchy(); $root = $hierarchy->getRootLogger(); $a = new LoggerLoggingEventTestCaseAppender('A1'); $a->setLayout( new LoggerLoggingEventTestCaseLayout() ); $root->addAppender($a); $logger = $hierarchy->getLogger('test'); $logger->debug('test'); $hierarchy->shutdown(); $ti = self::$throwableInfo; self::assertEquals($ti, null); } public function testGetThrowableInformation2() { $hierarchy = Logger::getHierarchy(); $root = $hierarchy->getRootLogger(); $a = new LoggerLoggingEventTestCaseAppender('A1'); $a->setLayout( new LoggerLoggingEventTestCaseLayout() ); $root->addAppender($a); $ex = new Exception('Message1'); $logger = $hierarchy->getLogger('test'); $logger->debug('test', $ex); $hierarchy->shutdown(); $ti = self::$throwableInfo; self::assertTrue($ti instanceof LoggerThrowableInformation); $result = $ti->getStringRepresentation(); self::assertInternalType('array', $result); } }