|
@@ -16,6 +16,8 @@ use Monolog\Logger;
|
|
|
|
|
|
|
|
class BufferHandlerTest extends TestCase
|
|
class BufferHandlerTest extends TestCase
|
|
|
{
|
|
{
|
|
|
|
|
+ private $shutdownCheckHandler;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* @covers Monolog\Handler\BufferHandler::__construct
|
|
* @covers Monolog\Handler\BufferHandler::__construct
|
|
|
* @covers Monolog\Handler\BufferHandler::handle
|
|
* @covers Monolog\Handler\BufferHandler::handle
|
|
@@ -38,15 +40,22 @@ class BufferHandlerTest extends TestCase
|
|
|
* @covers Monolog\Handler\BufferHandler::close
|
|
* @covers Monolog\Handler\BufferHandler::close
|
|
|
* @covers Monolog\Handler\BufferHandler::flush
|
|
* @covers Monolog\Handler\BufferHandler::flush
|
|
|
*/
|
|
*/
|
|
|
- public function testDestructPropagatesRecords()
|
|
|
|
|
|
|
+ public function testPropagatesRecordsAtEndOfRequest()
|
|
|
{
|
|
{
|
|
|
$test = new TestHandler();
|
|
$test = new TestHandler();
|
|
|
$handler = new BufferHandler($test);
|
|
$handler = new BufferHandler($test);
|
|
|
$handler->handle($this->getRecord(Logger::WARNING));
|
|
$handler->handle($this->getRecord(Logger::WARNING));
|
|
|
$handler->handle($this->getRecord(Logger::DEBUG));
|
|
$handler->handle($this->getRecord(Logger::DEBUG));
|
|
|
- $handler->__destruct();
|
|
|
|
|
- $this->assertTrue($test->hasWarningRecords());
|
|
|
|
|
- $this->assertTrue($test->hasDebugRecords());
|
|
|
|
|
|
|
+ $this->shutdownCheckHandler = $test;
|
|
|
|
|
+ register_shutdown_function(array($this, 'checkPropagation'));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public function checkPropagation()
|
|
|
|
|
+ {
|
|
|
|
|
+ if (!$this->shutdownCheckHandler->hasWarningRecords() || !$this->shutdownCheckHandler->hasDebugRecords()) {
|
|
|
|
|
+ echo '!!! BufferHandlerTest::testPropagatesRecordsAtEndOfRequest failed to verify that the messages have been propagated' . PHP_EOL;
|
|
|
|
|
+ exit(1);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|