1
0
mirror of https://github.com/Seldaek/monolog.git synced 2025-07-31 02:10:22 +02:00

Make context optional in hasRecord to not break backwards compatibility

This commit is contained in:
Petter Blomberg
2018-05-31 15:34:07 +02:00
committed by Jordi Boggiano
parent b381a973bc
commit f753c68a73
2 changed files with 32 additions and 34 deletions

View File

@@ -86,18 +86,16 @@ class TestHandler extends AbstractProcessingHandler
public function hasRecord($record, $level)
{
if (is_string($record)) {
$record = array('message' => $record);
}
return $this->hasRecordThatPasses(function ($rec) use ($record) {
if (is_array($record)) {
if ($rec['message'] !== $record['message']) {
return false;
}
if ($rec['context'] !== $record['context']) {
return false;
}
} else {
if ($rec['message'] !== $record) {
return false;
}
if ($rec['message'] !== $record['message']) {
return false;
}
if (isset($record['context']) && $rec['context'] !== $record['context']) {
return false;
}
return true;
}, $level);

View File

@@ -56,48 +56,48 @@ class TestHandlerTest extends TestCase
public function testHandlerAssertEmptyContext() {
$handler = new TestHandler;
$record = $this->getRecord(Logger::WARNING, 'test', []);
$this->assertFalse($handler->hasWarning([
$record = $this->getRecord(Logger::WARNING, 'test', array());
$this->assertFalse($handler->hasWarning(array(
'message' => 'test',
'context' => [],
]));
'context' => array(),
)));
$handler->handle($record);
$this->assertTrue($handler->hasWarning([
$this->assertTrue($handler->hasWarning(array(
'message' => 'test',
'context' => [],
]));
$this->assertFalse($handler->hasWarning([
'context' => array(),
)));
$this->assertFalse($handler->hasWarning(array(
'message' => 'test',
'context' => [
'context' => array(
'foo' => 'bar'
],
]));
),
)));
}
public function testHandlerAssertNonEmptyContext() {
$handler = new TestHandler;
$record = $this->getRecord(Logger::WARNING, 'test', ['foo' => 'bar']);
$this->assertFalse($handler->hasWarning([
$record = $this->getRecord(Logger::WARNING, 'test', array('foo' => 'bar'));
$this->assertFalse($handler->hasWarning(array(
'message' => 'test',
'context' => [
'context' => array(
'foo' => 'bar'
],
]));
),
)));
$handler->handle($record);
$this->assertTrue($handler->hasWarning([
$this->assertTrue($handler->hasWarning(array(
'message' => 'test',
'context' => [
'context' => array(
'foo' => 'bar'
],
]));
$this->assertFalse($handler->hasWarning([
),
)));
$this->assertFalse($handler->hasWarning(array(
'message' => 'test',
'context' => [],
]));
'context' => array(),
)));
}
public function methodProvider()