Completed
Pull Request — release/0.7.0 (#22)
by Yo
09:25
created

LoggerConfiguration::getConfigNode()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 25
Code Lines 21

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 20
CRAP Score 1.0001

Importance

Changes 0
Metric Value
dl 0
loc 25
ccs 20
cts 21
cp 0.9524
rs 8.8571
c 0
b 0
f 0
cc 1
eloc 21
nc 1
nop 0
crap 1.0001
1
<?php
2
namespace Yoanm\BehatUtilsExtension\ServiceContainer\Configuration;
3
4
use Monolog\Logger;
5
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
6
7
class LoggerConfiguration implements ConfigurationInterface
8
{
9
    /**
10
     * {@inheritdoc}
11
     */
12 1
    public function getConfigNode()
13
    {
14 1
        $treeBuilder = new TreeBuilder();
15 1
        $rootNode = $treeBuilder->root('logger');
16
        $rootNode
17 1
            ->addDefaultsIfNotSet()
18 1
            ->children()
19 1
                ->scalarNode('path')
20 1
                    ->info('Name of the log file')
21 1
                    ->defaultValue('behat.log')
22 1
                ->end()
23 1
                ->scalarNode('level')
24 1
                    ->info('Log level')
25 1
                    ->beforeNormalization()
26 1
                        ->always()
27 1
                        ->then(function ($value) {
28
                            return Logger::toMonologLevel($value);
29 1
                        })
30 1
                    ->end()
31 1
                    ->defaultValue(Logger::INFO)
32 1
                ->end()
33 1
            ->end();
34
35 1
        return $rootNode;
36
    }
37
}
38