| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- <?php declare(strict_types=1);
- /*
- * 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 ElasticsearchFormatterTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @covers Monolog\Formatter\ElasticsearchFormatter::__construct
- * @covers Monolog\Formatter\ElasticsearchFormatter::format
- * @covers Monolog\Formatter\ElasticsearchFormatter::getDocument
- */
- public function testFormat()
- {
- // Test log message
- $msg = [
- 'level' => Logger::ERROR,
- 'level_name' => 'ERROR',
- 'channel' => 'meh',
- 'context' => ['foo' => 7, 'bar', 'class' => new \stdClass],
- 'datetime' => new \DateTimeImmutable("@0"),
- 'extra' => [],
- 'message' => 'log',
- ];
- // Expected values
- $expected = $msg;
- $expected['datetime'] = '1970-01-01T00:00:00+0000';
- $expected['context'] = [
- 'class' => ['stdClass' => []],
- 'foo' => 7,
- 0 => 'bar',
- ];
- // Format log message
- $formatter = new ElasticsearchFormatter('my_index', 'doc_type');
- $doc = $formatter->format($msg);
- $this->assertIsArray($doc);
- // Record parameters
- $this->assertEquals('my_index', $doc['_index']);
- $this->assertEquals('doc_type', $doc['_type']);
- // Record data values
- foreach (array_keys($expected) as $key) {
- $this->assertEquals($expected[$key], $doc[$key]);
- }
- }
- /**
- * @covers Monolog\Formatter\ElasticsearchFormatter::getIndex
- * @covers Monolog\Formatter\ElasticsearchFormatter::getType
- */
- public function testGetters()
- {
- $formatter = new ElasticsearchFormatter('my_index', 'doc_type');
- $this->assertEquals('my_index', $formatter->getIndex());
- $this->assertEquals('doc_type', $formatter->getType());
- }
- }
|