Failed Conditions
Push — master ( 9cb424...0e881e )
by Asmir
02:57 queued 11s
created

ConfigurationFile::getDirectoriesRelativeToFile()   A

Complexity

Conditions 3
Paths 3

Size

Total Lines 9
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 3

Importance

Changes 0
Metric Value
cc 3
eloc 4
nc 3
nop 2
dl 0
loc 9
ccs 5
cts 5
cp 1
crap 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Doctrine\Migrations\Configuration\Migration;
6
7
use function dirname;
8
use function realpath;
9
10
abstract class ConfigurationFile implements ConfigurationLoader
11
{
12
    /** @var string */
13
    protected $file;
14
15 43
    public function __construct(string $file)
16
    {
17 43
        $this->file = $file;
18 43
    }
19
20
    /**
21
     * @param array<string,string> $directories
22
     *
23
     * @return array<string,string>
24
     */
25 14
    final protected function getDirectoriesRelativeToFile(array $directories, string $file) : array
26
    {
27 14
        foreach ($directories as $ns => $dir) {
28 14
            $path = realpath(dirname($file) . '/' . $dir);
29
30 14
            $directories[$ns] = $path !== false ? $path : $dir;
31
        }
32
33 14
        return $directories;
34
    }
35
}
36