ConfigHelper   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 6
lcom 0
cbo 2
dl 0
loc 31
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A isDryRun() 0 10 2
A generateConfig() 0 8 2
A makeConnector() 0 8 2
1
<?php
2
3
namespace MuhmdRaouf\LaravelParatest\Helper;
4
5
use MuhmdRaouf\LaravelParatest\Database\Connector;
6
use MuhmdRaouf\LaravelParatest\Database\PDOConnector;
7
use MuhmdRaouf\LaravelParatest\Database\DryRunConnector;
8
9
class ConfigHelper
10
{
11
    public static function isDryRun(bool $dryRun = false): bool
12
    {
13
        $isDryRun = (bool) $dryRun;
14
15
        if ($isDryRun) {
16
            info('[DRY] Running in dry-run.');
17
        }
18
19
        return $isDryRun;
20
    }
21
22
    public static function generateConfig($database): array
23
    {
24
        $connection = config('database.default');
25
        $configs = config("database.connections.$connection");
26
        $configs['database'] = $database ?: $configs['database'];
27
28
        return $configs;
29
    }
30
31
    public static function makeConnector(array $configs, bool $dryRun, $output): Connector
32
    {
33
        if ($dryRun === true) {
34
            return new DryRunConnector($output);
35
        }
36
37
        return PDOConnector::make($configs);
38
    }
39
}
40