Failed Conditions
Branch feature/init (0e876c)
by Yo
04:41 queued 01:07
created

LoggerConfiguration::getConfigTreeBuilder()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 25
Code Lines 21

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

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