Passed
Push — master ( e37ab6...297052 )
by Koldo
02:10
created

InvokableTranslator::process()   A

Complexity

Conditions 5
Paths 4

Size

Total Lines 21
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 12
CRAP Score 5

Importance

Changes 0
Metric Value
cc 5
eloc 13
nc 4
nop 1
dl 0
loc 21
ccs 12
cts 12
cp 1
crap 5
rs 9.5222
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Antidot\SymfonyConfigTranslator;
6
7
class InvokableTranslator
8
{
9
10 1
    public function process(array &$symfonyService): array
11
    {
12 1
        $invokables = [];
13
14 1
        foreach ($symfonyService as $name => $service) {
15 1
            if (empty($service)) {
16 1
                $invokables[$name] = $name;
17 1
                unset($symfonyService[$name]);
18 1
                continue;
19
            }
20
21 1
            if (empty($service['arguments']) && isset($service['class'])) {
22 1
                $invokables[$name] = $service['class'];
23 1
                unset($symfonyService[$name]);
24 1
                continue;
25
            }
26
        }
27
28
        return [
29
            'dependencies' => [
30 1
                'invokables' => $invokables,
31
            ]
32
        ];
33
    }
34
}
35