Completed
Pull Request — master (#145)
by Jérémy
02:42
created

MonologHandlerPassTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 17
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 17
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A registerCompilerPass() 0 3 1
A testProcessChannel() 0 10 1
1
<?php
2
3
namespace Ekino\Bundle\NewRelicBundle\Tests\DependencyInjection\Compiler;
4
5
use Ekino\Bundle\NewRelicBundle\DependencyInjection\Compiler\MonologHandlerPass;
6
use Matthias\SymfonyDependencyInjectionTest\PhpUnit\AbstractCompilerPassTestCase;
7
use Symfony\Component\DependencyInjection\ContainerBuilder;
8
use Symfony\Component\DependencyInjection\Reference;
9
10
class MonologHandlerPassTest extends AbstractCompilerPassTestCase
11
{
12
    protected function registerCompilerPass(ContainerBuilder $container)
13
    {
14
        $container->addCompilerPass(new MonologHandlerPass());
15
    }
16
17
    public function testProcessChannel()
18
    {
19
        $this->container->setParameter('ekino.new_relic.log_logs', ['channels' => ['app', 'foo']]);
20
        $this->registerService('monolog.logger', \Monolog\Logger::class);
21
        $this->registerService('monolog.logger.foo', \Monolog\Logger::class);
22
23
        $this->compile();
24
25
        $this->assertContainerBuilderHasServiceDefinitionWithMethodCall('monolog.logger', 'pushHandler', [new Reference('ekino.new_relic.logs_handler')]);
26
        $this->assertContainerBuilderHasServiceDefinitionWithMethodCall('monolog.logger.foo', 'pushHandler', [new Reference('ekino.new_relic.logs_handler')]);
27
    }
28
}
29