Failed Conditions
Pull Request — master (#25)
by Yo
07:26 queued 03:57
created

LoggerSubExtension   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 61
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 7

Test Coverage

Coverage 66.67%

Importance

Changes 0
Metric Value
wmc 5
lcom 0
cbo 7
dl 0
loc 61
ccs 4
cts 6
cp 0.6667
rs 10
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A initialize() 0 3 1
A configure() 0 20 1
A getConfigKey() 0 4 1
A load() 0 3 1
A process() 0 3 1
1
<?php
2
namespace Yoanm\Behat3SymfonyExtension\ServiceContainer\SubExtension;
3
4
use Behat\Testwork\EventDispatcher\ServiceContainer\EventDispatcherExtension;
5
use Behat\Testwork\ServiceContainer\ExtensionManager;
6
use Monolog\Handler\StreamHandler;
7
use Monolog\Logger;
8
use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition;
9
use Symfony\Component\DependencyInjection\ContainerBuilder;
10
use Symfony\Component\DependencyInjection\Reference;
11
use Yoanm\Behat3SymfonyExtension\Context\Initializer\LoggerAwareInitializer;
12
use Yoanm\Behat3SymfonyExtension\Logger\SfKernelEventLogger;
13
use Yoanm\Behat3SymfonyExtension\ServiceContainer\AbstractExtension;
14
use Yoanm\Behat3SymfonyExtension\Subscriber\SfKernelLoggerSubscriber;
15
16
class LoggerSubExtension extends AbstractExtension
17
{
18
    /**
19
     * @inheritDoc
20
     */
21 1
    public function getConfigKey()
22
    {
23 1
        return 'logger';
24
    }
25
26
    // @codeCoverageIgnoreStart
27
    // Not possible to cover this because ExtensionManager is a final class
28
    /**
29
     * {@inheritdoc}
30
     */
31
    public function initialize(ExtensionManager $extensionManager)
32
    {
33
    }
34
    // @codeCoverageIgnoreEnd
35
36
    // @codeCoverageIgnoreStart
37
    // Will be covered by FT
38
    /**
39
     * @inheritDoc
40
     */
41
    public function configure(ArrayNodeDefinition $builder)
42
    {
43
        $builder
44
            ->addDefaultsIfNotSet()
45
            ->children()
46
                ->scalarNode('path')
47
                    ->defaultValue('var/log/behat.log')
48
                ->end()
49
                ->scalarNode('level')
50
                    ->beforeNormalization()
51
                    ->always()
52
                    ->then(function ($value) {
53
                        return Logger::toMonologLevel($value);
54
                    })
55
                    ->end()
56
                    ->defaultValue(Logger::DEBUG)
57
                ->end()
58
            ->end()
59
        ->end();
60
    }
61
    // @codeCoverageIgnoreEnd
62
63
    /**
64
     * {@inheritdoc}
65
     */
66
    public function load(ContainerBuilder $container, array $config)
67
    {
68
    }
69
70
    /**
71
     * {@inheritdoc}
72
     */
73 1
    public function process(ContainerBuilder $container)
74
    {
75 1
    }
76
}
77