mirror of
https://github.com/Seldaek/monolog.git
synced 2025-02-22 14:03:29 +01:00
143 lines
4.1 KiB
PHP
143 lines
4.1 KiB
PHP
<?php
|
|
|
|
/*
|
|
* This file is part of the Monolog package.
|
|
*
|
|
* (c) Jordi Boggiano <j.boggiano@seld.be>
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Monolog\Formatter;
|
|
|
|
use Monolog\Logger;
|
|
|
|
class WildfireFormatterTest extends \PHPUnit_Framework_TestCase
|
|
{
|
|
/**
|
|
* @covers Monolog\Formatter\WildfireFormatter::format
|
|
*/
|
|
public function testDefaultFormat()
|
|
{
|
|
$wildfire = new WildfireFormatter();
|
|
$record = array(
|
|
'level' => Logger::ERROR,
|
|
'level_name' => 'ERROR',
|
|
'channel' => 'meh',
|
|
'context' => array('from' => 'logger'),
|
|
'datetime' => new \DateTime("@0"),
|
|
'extra' => array('ip' => '127.0.0.1'),
|
|
'message' => 'log',
|
|
);
|
|
|
|
$message = $wildfire->format($record);
|
|
|
|
$this->assertEquals(
|
|
'125|[{"Type":"ERROR","File":"","Line":"","Label":"meh"},'
|
|
.'{"message":"log","context":{"from":"logger"},"extra":{"ip":"127.0.0.1"}}]|',
|
|
$message
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @covers Monolog\Formatter\WildfireFormatter::format
|
|
*/
|
|
public function testFormatWithFileAndLine()
|
|
{
|
|
$wildfire = new WildfireFormatter();
|
|
$record = array(
|
|
'level' => Logger::ERROR,
|
|
'level_name' => 'ERROR',
|
|
'channel' => 'meh',
|
|
'context' => array('from' => 'logger'),
|
|
'datetime' => new \DateTime("@0"),
|
|
'extra' => array('ip' => '127.0.0.1', 'file' => 'test', 'line' => 14),
|
|
'message' => 'log',
|
|
);
|
|
|
|
$message = $wildfire->format($record);
|
|
|
|
$this->assertEquals(
|
|
'129|[{"Type":"ERROR","File":"test","Line":14,"Label":"meh"},'
|
|
.'{"message":"log","context":{"from":"logger"},"extra":{"ip":"127.0.0.1"}}]|',
|
|
$message
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @covers Monolog\Formatter\WildfireFormatter::format
|
|
*/
|
|
public function testFormatWithoutContext()
|
|
{
|
|
$wildfire = new WildfireFormatter();
|
|
$record = array(
|
|
'level' => Logger::ERROR,
|
|
'level_name' => 'ERROR',
|
|
'channel' => 'meh',
|
|
'context' => array(),
|
|
'datetime' => new \DateTime("@0"),
|
|
'extra' => array(),
|
|
'message' => 'log',
|
|
);
|
|
|
|
$message = $wildfire->format($record);
|
|
|
|
$this->assertEquals(
|
|
'58|[{"Type":"ERROR","File":"","Line":"","Label":"meh"},"log"]|',
|
|
$message
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @covers Monolog\Formatter\WildfireFormatter::formatBatch
|
|
* @expectedException BadMethodCallException
|
|
*/
|
|
public function testBatchFormatThrowException()
|
|
{
|
|
$wildfire = new WildfireFormatter();
|
|
$record = array(
|
|
'level' => Logger::ERROR,
|
|
'level_name' => 'ERROR',
|
|
'channel' => 'meh',
|
|
'context' => array(),
|
|
'datetime' => new \DateTime("@0"),
|
|
'extra' => array(),
|
|
'message' => 'log',
|
|
);
|
|
|
|
$wildfire->formatBatch(array($record));
|
|
}
|
|
|
|
/**
|
|
* @covers Monolog\Formatter\WildfireFormatter::format
|
|
*/
|
|
public function testTableFormat()
|
|
{
|
|
$wildfire = new WildfireFormatter();
|
|
$record = array(
|
|
'level' => Logger::ERROR,
|
|
'level_name' => 'ERROR',
|
|
'channel' => 'table-channel',
|
|
'context' => array(
|
|
WildfireFormatter::TABLE => array(
|
|
array('col1', 'col2', 'col3'),
|
|
array('val1', 'val2', 'val3'),
|
|
array('foo1', 'foo2', 'foo3'),
|
|
array('bar1', 'bar2', 'bar3'),
|
|
),
|
|
),
|
|
'datetime' => new \DateTime("@0"),
|
|
'extra' => array(),
|
|
'message' => 'table-message',
|
|
);
|
|
|
|
$message = $wildfire->format($record);
|
|
|
|
$this->assertEquals(
|
|
'171|[{"Type":"TABLE","File":"","Line":"","Label":"table-channel: table-message"},[["col1","col2","col3"],["val1","val2","val3"],["foo1","foo2","foo3"],["bar1","bar2","bar3"]]]|',
|
|
$message
|
|
);
|
|
}
|
|
}
|