Passed
Pull Request — master (#395)
by Wilmer
04:09 queued 01:23
created

QueryBuilderProvider::buildFrom()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 45
Code Lines 30

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 30
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 45
rs 9.44
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Db\Tests\Provider;
6
7
use Yiisoft\Db\Expression\Expression;
8
9
final class QueryBuilderProvider
10
{
11
    public function buildFrom(): array
12
    {
13
        return [
14
            [
15
                'table1',
16
                <<<SQL
17
                SELECT * FROM table1
18
                SQL,
19
            ],
20
            [
21
                ['table1'],
22
                <<<SQL
23
                SELECT * FROM table1
24
                SQL,
25
            ],
26
            [
27
                new Expression('table2'),
28
                <<<SQL
29
                SELECT * FROM table2
30
                SQL,
31
            ],
32
            [
33
                [new Expression('table2')],
34
                <<<SQL
35
                SELECT * FROM table2
36
                SQL,
37
            ],
38
            [
39
                ['alias' => 'table3'],
40
                <<<SQL
41
                SELECT * FROM table3 alias
42
                SQL,
43
            ],
44
            [
45
                ['alias' => new Expression('table4')],
46
                <<<SQL
47
                SELECT * FROM table4 alias
48
                SQL,
49
            ],
50
            [
51
                ['alias' => new Expression('func(:param1, :param2)', ['param1' => 'A', 'param2' => 'B'])],
52
                <<<SQL
53
                SELECT * FROM func(:param1, :param2) alias
54
                SQL,
55
                ['param1' => 'A', 'param2' => 'B'],
56
            ],
57
        ];
58
    }
59
}
60