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

KernelConfiguration   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
c 1
b 0
f 0
lcom 0
cbo 2
dl 0
loc 50
ccs 0
cts 45
cp 0
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A getConfigTreeBuilder() 0 47 2
1
<?php
2
namespace Yoanm\Behat3SymfonyExtension\ServiceContainer\Configuration;
3
4
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
5
use Symfony\Component\Config\Definition\ConfigurationInterface;
6
7
class KernelConfiguration implements ConfigurationInterface
8
{
9
    public function getConfigTreeBuilder()
10
    {
11
        $castToBool = function ($value) {
12
            $filtered = filter_var(
13
                $value,
14
                FILTER_VALIDATE_BOOLEAN,
15
                FILTER_NULL_ON_FAILURE
16
            );
17
18
            return (null === $filtered) ? (bool) $value : $filtered;
19
        };
20
        $treeBuilder = new TreeBuilder();
21
        $rootNode = $treeBuilder->root('kernel');
22
        $rootNode
23
            ->addDefaultsIfNotSet()
24
            ->children()
25
                ->scalarNode('bootstrap')
26
                    ->defaultValue('app/autoload.php')
27
                ->end()
28
                ->scalarNode('path')
29
                    ->defaultValue('app/AppKernel.php')
30
                ->end()
31
                ->scalarNode('class')
32
                    ->defaultValue('AppKernel')
33
                ->end()
34
                ->scalarNode('env')
35
                    ->defaultValue('test')
36
                ->end()
37
                ->booleanNode('debug')
38
                    ->beforeNormalization()
39
                    ->always()
40
                        ->then($castToBool)
41
                    ->end()
42
                    ->defaultTrue()
43
                ->end()
44
                ->booleanNode('reboot')
45
                    ->info('If true symfony kernel will be rebooted after each scenario/example')
46
                    ->beforeNormalization()
47
                        ->always()
48
                        ->then($castToBool)
49
                    ->end()
50
                    ->defaultTrue()
51
                ->end()
52
            ->end();
53
54
        return $treeBuilder;
55
    }
56
}
57