Using::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1
Metric Value
dl 0
loc 4
ccs 3
cts 3
cp 1
rs 10
cc 1
eloc 2
nc 1
nop 1
crap 1
1
<?php
2
3
namespace Muffin\Queries\Snippets;
4
5
use Muffin\Snippet;
6
7
class Using implements Snippet
8
{
9
    private
10
        $columns;
11
12 14
    public function __construct($column)
13
    {
14 14
        $this->columns = $this->ensureIsArray($column);
15 14
    }
16
17 14
    public function toString()
18
    {
19 14
        $usingColumns = implode(', ', array_filter($this->columns));
20 14
        if(empty($usingColumns))
21 14
        {
22 2
            return '';
23
        }
24
25 12
        return sprintf(
26 12
            'USING (%s)',
27
            $usingColumns
28 12
        );
29
    }
30
31 14
    private function ensureIsArray($input)
32
    {
33 14
        if(! is_array($input))
34 14
        {
35 12
            $input = array($input);
36 12
        }
37
38 14
        return $input;
39
    }
40
}
41