Example #1
0
 /**
  * @param array $record
  */
 protected function write(array $record)
 {
     if ($record['level'] >= Logger::ERROR && isset($record['context']['exception']) && $record['context']['exception'] instanceof Exception) {
         $this->console->logError($record['context']['exception']);
         return;
     }
     $this->console->log($record['formatted']);
 }
 /**
  * @dataProvider dataWriteExceptions
  */
 public function testWriteExceptions($exception, $level)
 {
     $reflectedHandler = new ReflectionClass('Jacobemerick\\MonologPqp\\PqpHandler');
     $reflectedWriteMethod = $reflectedHandler->getMethod('write');
     $reflectedWriteMethod->setAccessible(true);
     $pqpHandler = new PqpHandler(new Console());
     $reflectedWriteMethod->invokeArgs($pqpHandler, array(array('level' => $level, 'context' => array('exception' => $exception))));
     $expectedConsole = new Console();
     $expectedConsole->logError($exception);
     $this->assertAttributeEquals($expectedConsole, 'console', $pqpHandler);
 }
Example #3
0
 public function testLogError()
 {
     $error = new Exception('Test Exception');
     $console = new Console();
     $console->logError($error);
     $store = $this->getProtectedStore($console);
     $log = array_pop($store);
     $this->assertEquals($error->getMessage(), $log['data']);
     $this->assertEquals($error->getFile(), $log['file']);
     $this->assertEquals($error->getLine(), $log['line']);
     $this->assertEquals('error', $log['type']);
     $error = new Exception('Test Exception');
     $message = 'override message';
     $console = new Console();
     $console->logError($error, $message);
     $store = $this->getProtectedStore($console);
     $log = array_pop($store);
     $this->assertEquals($message, $log['data']);
 }