1
0
mirror of https://github.com/Seldaek/monolog.git synced 2025-08-06 13:16:39 +02:00

Pass $record['formatted'] as the user parameter for zend monitor. Refactored test.

This commit is contained in:
ChristianB
2013-01-31 10:39:11 +01:00
parent 5a2a9129d4
commit 83b84ff818
2 changed files with 27 additions and 9 deletions

View File

@@ -61,9 +61,11 @@ class ZendMonitorHandler extends AbstractProcessingHandler
protected function write(array $record) protected function write(array $record)
{ {
if ($this->isZendServer()) { if ($this->isZendServer()) {
$formatter = $this->getDefaultFormatter(); $this->writeZendMonitorCustomEvent(
$record = $formatter->format($record); $this->levelMap[$record['level']],
$this->writeZendMonitorCustomEvent($this->levelMap[$record['level']], $record['message']); $record['message'],
$record['formatted']
);
} }
} }
@@ -72,10 +74,11 @@ class ZendMonitorHandler extends AbstractProcessingHandler
* *
* @param int $level * @param int $level
* @param string $message * @param string $message
* @param array $formatted
*/ */
protected function writeZendMonitorCustomEvent($level, $message) protected function writeZendMonitorCustomEvent($level, $message, $formatted)
{ {
zend_monitor_custom_event($level, $message); zend_monitor_custom_event($level, $message, $formatted);
} }
/** /**

View File

@@ -40,16 +40,31 @@ class ZendMonitorHandlerTest extends TestCase
public function testWrite() public function testWrite()
{ {
$record = $this->getRecord(); $record = $this->getRecord();
$formatterResult = array(
'message' => $record['message']
);
$zendMonitor = $this->getMockBuilder('Monolog\Handler\ZendMonitorHandler') $zendMonitor = $this->getMockBuilder('Monolog\Handler\ZendMonitorHandler')
->setMethods(array('writeZendMonitorCustomEvent')) ->setMethods(array('writeZendMonitorCustomEvent', 'getDefaultFormatter'))
->getMock(); ->getMock();
$formatterMock = $this->getMockBuilder('Monolog\Formatter\NormalizerFormatter')
->disableOriginalConstructor()
->getMock();
$formatterMock->expects($this->once())
->method('format')
->will($this->returnValue($formatterResult));
$zendMonitor->expects($this->once())
->method('getDefaultFormatter')
->will($this->returnValue($formatterMock));
$levelMap = $zendMonitor->getLevelMap(); $levelMap = $zendMonitor->getLevelMap();
$zendMonitor->expects($this->once()) $zendMonitor->expects($this->once())
->method('writeZendMonitorCustomEvent') ->method('writeZendMonitorCustomEvent')
->with($levelMap[$record['level']], $record['message']); ->with($levelMap[$record['level']], $record['message'], $formatterResult);
$zendMonitor->handle($record); $zendMonitor->handle($record);
} }