LogAppenderTest::testAppend()   B
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 40
Code Lines 27

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 40
rs 8.8571
c 0
b 0
f 0
cc 1
eloc 27
nc 1
nop 2
1
<?php
2
3
namespace PamiModule\Log;
4
5
use Zend\Log\Logger;
6
7
class LogAppenderTest extends \PHPUnit_Framework_TestCase
8
{
9
    /**
10
     * @dataProvider logEventProvider
11
     */
12
    public function testAppend($levelInt, $zendLogInt)
13
    {
14
        $logger = $this->getMockBuilder('Zend\\Log\\Logger')
15
            ->setMethods(['log'])
16
            ->getMock();
17
18
        $loggerLevel = $this->getMockBuilder('LoggerLevel')
19
            ->disableOriginalConstructor()
20
            ->setMethods(['toInt'])
21
            ->getMock();
22
23
        $event = $this->getMockBuilder('LoggerLoggingEvent')
24
            ->disableOriginalConstructor()
25
            ->setMethods(['getLevel', 'getMessage'])
26
            ->getMock();
27
28
        $logger->expects(static::once())
29
            ->method('log')
30
            ->with($zendLogInt, 'foo');
31
32
        $loggerLevel->expects(static::atLeast(1))
33
            ->method('toInt')
34
            ->willReturn($levelInt);
35
36
        $event->expects(static::atLeast(1))
37
            ->method('getLevel')
38
            ->willReturn($loggerLevel);
39
40
        $event->expects(static::atLeast(1))
41
            ->method('getMessage')
42
            ->willReturn('foo');
43
44
        /* @var Logger $logger */
45
        /* @var \LoggerLoggingEvent $event */
46
47
        $appender = new LogAppender();
48
        $appender->setZendLog($logger);
49
50
        $appender->append($event);
51
    }
52
53
    public function logEventProvider()
54
    {
55
        return [
56
            [\LoggerLevel::FATAL, Logger::CRIT],
57
            [\LoggerLevel::ERROR, Logger::ERR],
58
            [\LoggerLevel::WARN, Logger::WARN],
59
            [\LoggerLevel::INFO, Logger::INFO],
60
            [\LoggerLevel::DEBUG, Logger::DEBUG],
61
            [\LoggerLevel::TRACE, Logger::DEBUG],
62
        ];
63
    }
64
}
65