* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Monolog\Handler; use Monolog\TestCase; class ZendMonitorHandlerTest extends TestCase { protected $zendMonitorHandler; public function setUp() { if (!function_exists('zend_monitor_custom_event')) { $this->markTestSkipped('ZendServer is not installed'); } } /** * @covers Monolog\Handler\ZendMonitorHandler::write */ public function testWrite() { $record = $this->getRecord(); $formatterResult = array( 'message' => $record['message'], ); $zendMonitor = $this->getMockBuilder('Monolog\Handler\ZendMonitorHandler') ->setMethods(array('writeZendMonitorCustomEvent', 'getDefaultFormatter')) ->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(); $zendMonitor->expects($this->once()) ->method('writeZendMonitorCustomEvent') ->with($levelMap[$record['level']], $record['message'], $formatterResult); $zendMonitor->handle($record); } /** * @covers Monolog\Handler\ZendMonitorHandler::getDefaultFormatter */ public function testGetDefaultFormatterReturnsNormalizerFormatter() { $zendMonitor = new ZendMonitorHandler(); $this->assertInstanceOf('Monolog\Formatter\NormalizerFormatter', $zendMonitor->getDefaultFormatter()); } }