DBConnectCheck   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 3
lcom 0
cbo 2
dl 0
loc 35
c 0
b 0
f 0
ccs 9
cts 9
cp 1
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 1
A performCheck() 0 8 2
1
<?php
2
3
namespace TonicHealthCheck\Check\DB\Connect;
4
5
use PDO;
6
use TonicHealthCheck\Check\DB\AbstractDBCheck;
7
use TonicHealthCheck\Check\DB\PDOFactory;
8
9
/**
10
 * Class DBConnectCheck.
11
 */
12
class DBConnectCheck extends AbstractDBCheck
13
{
14
    const CHECK = 'db-connect-check';
15
16
    /**
17
     * @var PDOFactory
18
     */
19
    protected $PDOFactory;
20
21
    /**
22
     * @param string     $checkNode
23
     * @param PDOFactory $PDOFactory
24
     */
25 2
    public function __construct($checkNode, PDOFactory $PDOFactory)
26
    {
27 2
        $this->setPDOFactory($PDOFactory);
28 2
        parent::__construct($checkNode);
29 2
    }
30
31
    /**
32
     * Check PDO can to connect to $dsn address.
33
     *
34
     * @return void
35
     *
36
     * @throws DBConnectCheckException
37
     */
38 2
    public function performCheck()
39
    {
40
        try {
41 2
            $this->getPDOInstance();
42 1
        } catch (\PDOException $e) {
43 1
            throw new DBConnectCheckException($e->getMessage(), $e->getCode(), $e);
44
        }
45 1
    }
46
}
47