Passed
Push — master ( 527271...9d5350 )
by Alexander
02:35
created

ConfigFactory::create()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 14
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 9
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 14
ccs 0
cts 3
cp 0
crap 2
rs 9.9666
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Yii\Runner\RoadRunner;
6
7
use Yiisoft\Config\Config;
8
use Yiisoft\Config\ConfigPaths;
9
use Yiisoft\Config\Modifier\RecursiveMerge;
10
use Yiisoft\Config\Modifier\ReverseMerge;
11
12
use function dirname;
13
14
final class ConfigFactory
15
{
16
    public static function create(?string $environment): Config
17
    {
18
        $eventGroups = [
19
            'events',
20
            'events-web',
21
            'events-console',
22
        ];
23
24
        return new Config(
25
            new ConfigPaths(dirname(__DIR__, 2), 'config'),
26
            $environment,
27
            [
28
                ReverseMerge::groups(...$eventGroups),
29
                RecursiveMerge::groups('params', ...$eventGroups),
30
            ],
31
        );
32
    }
33
}
34