ConfigurationFile   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 4
lcom 0
cbo 0
dl 0
loc 26
ccs 8
cts 8
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A getDirectoriesRelativeToFile() 0 10 3
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 44
    public function __construct(string $file)
16
    {
17 44
        $this->file = $file;
18 44
    }
19
20
    /**
21
     * @param array<string,string> $directories
22
     *
23
     * @return array<string,string>
24
     */
25 15
    final protected function getDirectoriesRelativeToFile(array $directories, string $file) : array
26
    {
27 15
        foreach ($directories as $ns => $dir) {
28 15
            $path = realpath(dirname($file) . '/' . $dir);
29
30 15
            $directories[$ns] = $path !== false ? $path : $dir;
31
        }
32
33 15
        return $directories;
34
    }
35
}
36