Просмотр исходного кода

Added tests for WildfireFormatter & FirePHPHandler

Eric Clemmons 14 лет назад
Родитель
Сommit
f158104762

+ 49 - 0
tests/Monolog/Formatter/WildfireFormatterTest.php

@@ -0,0 +1,49 @@
+<?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
+{
+
+    /**
+     * @dataProvider recordProvider
+     */
+    public function testDefaultFormatIsLineFormatterWithoutNewLine($record)
+    {
+        $wildfire = new WildfireFormatter();
+        
+        $record = $wildfire->format($record);
+        
+        $this->assertEquals(
+            '70|[{"Type":"ERROR","File":"","Line":""},"meh: log extra(ip: 127.0.0.1)"]|',
+            $record['message']
+        );
+    }
+
+    public function recordProvider()
+    {
+        $record = array(
+            'level_name' => 'ERROR',
+            'channel' => 'meh',
+            'datetime' => new \DateTime,
+            'extra' => array('ip' => '127.0.0.1'),
+            'message' => 'log',
+        );
+        
+        return array(
+            array($record),
+        );
+    }
+
+}

+ 56 - 0
tests/Monolog/Handler/FirePHPHandlerTest.php

@@ -0,0 +1,56 @@
+<?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\Handler;
+
+use Monolog\TestCase;
+use Monolog\Logger;
+
+class FirePHPHandlerTest extends TestCase
+{
+
+    /**
+     * @dataProvider handlerProvider
+     */
+    public function testCloseReturnsFalseWhenHeadersAlreadySent($handler)
+    {
+        $this->assertFalse($handler->close());
+    }
+
+    public function testEmptyHandlerHasProtocolStructureAndPluginHeaders()
+    {
+        $handler = new FirePHPHandler();
+        
+        $this->assertEquals(3, count($handler->getHeaders()));
+    }
+
+    /**
+     * @dataProvider handlerProvider
+     */
+    public function testHandlerHasWildFireAndRecordHeaders($handler)
+    {
+        $this->assertEquals(7, count($handler->getHeaders()));
+    }
+
+    public function handlerProvider()
+    {
+        $handler = new FirePHPHandler();
+        
+        $handler->handle($this->getRecord(Logger::DEBUG));
+        $handler->handle($this->getRecord(Logger::DEBUG));
+        $handler->handle($this->getRecord(Logger::INFO));
+        $handler->handle($this->getRecord(Logger::WARNING));
+        
+        return array(
+            array($handler),
+        );
+    }
+}