ConnectionTest   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 45
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Importance

Changes 0
Metric Value
wmc 5
lcom 1
cbo 3
dl 0
loc 45
rs 10
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A setUp() 0 4 1
A createQueryBuilder() 0 6 1
A createResultSetFromMagicCall() 0 6 1
A createResultSetFromMagicGet() 0 6 1
A addingWhereOnFirstCall() 0 8 1
1
<?php
2
3
namespace Reduce\Test\Db;
4
5
use Reduce\Db\Connection;
6
use Doctrine\DBAL\Driver\PDOSqlite\Driver;
7
use Reduce\Db\Query\QueryBuilder;
8
    
9
class ConnectionTest extends \PHPUnit_Framework_TestCase
10
{
11
    const TABLE_NAME = 'tableName';
12
    
13
    protected $connection;
14
    
15
    protected function setUp()
16
    {
17
        $this->connection = new Connection(['global' => ['memory' => true]], new Driver);
18
    }
19
    
20
    /** @test */
21
    public function createQueryBuilder()
22
    {
23
        $queryBuilder = $this->connection->createQueryBuilder();
24
        
25
        $this->assertInstanceOf('Reduce\Db\Query\QueryBuilder', $queryBuilder);
26
    }
27
    
28
    /** @test */
29
    public function createResultSetFromMagicCall()
30
    {
31
        $resultSet = $this->connection->{self::TABLE_NAME}();
32
        
33
        $this->assertInstanceOf('Reduce\Db\ResultSet', $resultSet);
34
    }
35
    
36
    /** @test */
37
    public function createResultSetFromMagicGet()
38
    {
39
        $row = $this->connection->{self::TABLE_NAME}[1];
40
        
41
        $this->assertInstanceOf('Reduce\Db\Row', $row);
42
    }
43
    
44
    /** @test */
45
    public function addingWhereOnFirstCall()
46
    {
47
        $resultSet = $this->connection->{self::TABLE_NAME}('name', 'value');
48
        
49
        $sql = 'SELECT * FROM ' . static::TABLE_NAME . ' WHERE name = ?';
50
        
51
        $this->assertEquals((string) $resultSet, $sql);
52
    }
53
}