mirror of
https://github.com/Seldaek/monolog.git
synced 2025-08-03 19:57:41 +02:00
Test using a MockMessagePublisher
This commit is contained in:
@@ -14,6 +14,16 @@ namespace Monolog\Handler;
|
|||||||
use Monolog\TestCase;
|
use Monolog\TestCase;
|
||||||
use Monolog\Logger;
|
use Monolog\Logger;
|
||||||
use Gelf\MessagePublisher;
|
use Gelf\MessagePublisher;
|
||||||
|
use Gelf\Message;
|
||||||
|
|
||||||
|
class MockMessagePublisher extends MessagePublisher
|
||||||
|
{
|
||||||
|
public function publish(Message $message) {
|
||||||
|
$this->lastMessage = $message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public $lastMessage = null;
|
||||||
|
}
|
||||||
|
|
||||||
class GelfHandlerTest extends TestCase
|
class GelfHandlerTest extends TestCase
|
||||||
{
|
{
|
||||||
@@ -34,16 +44,43 @@ class GelfHandlerTest extends TestCase
|
|||||||
$this->assertInstanceOf('Monolog\Handler\GelfHandler', $handler);
|
$this->assertInstanceOf('Monolog\Handler\GelfHandler', $handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function getMessagePublisher()
|
protected function getHandler($messagePublisher)
|
||||||
{
|
{
|
||||||
return new MessagePublisher('localhost');
|
$handler = new GelfHandler($messagePublisher);
|
||||||
|
$handler->setFormatter($this->getIdentityFormatter());
|
||||||
|
return $handler;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testStuff()
|
protected function getMessagePublisher()
|
||||||
{
|
{
|
||||||
$handler = new GelfHandler($this->getMessagePublisher());
|
return new MockMessagePublisher('localhost');
|
||||||
$handler->setFormatter($this->getIdentityFormatter());
|
}
|
||||||
$handler->handle($this->getRecord(Logger::DEBUG));
|
|
||||||
$handler->handle($this->getRecord(Logger::WARNING));
|
public function testDebug()
|
||||||
|
{
|
||||||
|
$messagePublisher = $this->getMessagePublisher();
|
||||||
|
$handler = $this->getHandler($messagePublisher);
|
||||||
|
|
||||||
|
$record = $this->getRecord(Logger::DEBUG, "A test debug message");
|
||||||
|
$handler->handle($record);
|
||||||
|
|
||||||
|
$this->assertEquals(7, $messagePublisher->lastMessage->getLevel());
|
||||||
|
$this->assertEquals('test', $messagePublisher->lastMessage->getFacility());
|
||||||
|
$this->assertEquals($record['message'], $messagePublisher->lastMessage->getShortMessage());
|
||||||
|
$this->assertEquals($record['message'], $messagePublisher->lastMessage->getFullMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testWarning()
|
||||||
|
{
|
||||||
|
$messagePublisher = $this->getMessagePublisher();
|
||||||
|
$handler = $this->getHandler($messagePublisher);
|
||||||
|
|
||||||
|
$record = $this->getRecord(Logger::WARNING, "A test warning message");
|
||||||
|
$handler->handle($record);
|
||||||
|
|
||||||
|
$this->assertEquals(4, $messagePublisher->lastMessage->getLevel());
|
||||||
|
$this->assertEquals('test', $messagePublisher->lastMessage->getFacility());
|
||||||
|
$this->assertEquals($record['message'], $messagePublisher->lastMessage->getShortMessage());
|
||||||
|
$this->assertEquals($record['message'], $messagePublisher->lastMessage->getFullMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user