Completed
Push — master ( 1dc6e5...73a7e8 )
by Jeroen
07:06 queued 20s
created

FieldTest::testConstructorDefaultValues()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 10
rs 9.9332
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace Kunstmaan\AdminListBundle\Tests\AdminList;
4
5
use Exception;
6
use Kunstmaan\AdminListBundle\AdminList\Field;
7
use Kunstmaan\AdminListBundle\AdminList\FieldAlias;
8
use PHPUnit\Framework\TestCase;
9
use stdClass;
10
11
/**
12
 * Generated by PHPUnit_SkeletonGenerator on 2012-09-13 at 16:18:47.
13
 */
14
class FieldTest extends TestCase
15
{
16
    /**
17
     * @var Field
18
     */
19
    protected $object;
20
21
    /**
22
     * Sets up the fixture, for example, opens a network connection.
23
     * This method is called before a test is executed.
24
     */
25
    protected function setUp()
26
    {
27
        $alias = new FieldAlias('ALIAS', 'test');
28
        $this->object = new Field('name', 'header', true, 'template.html.twig', $alias);
29
    }
30
31
    public function test__construct()
32
    {
33
        $object = new Field('name', 'header', true, 'template.html.twig');
34
        $this->assertEquals('name', $object->getName());
35
        $this->assertEquals('header', $object->getHeader());
36
        $this->assertTrue($object->isSortable());
37
        $this->assertEquals('template.html.twig', $object->getTemplate());
38
    }
39
40
    public function testConstructorDefaultValues()
41
    {
42
        $object = new Field('name', 'header');
43
44
        $this->assertEquals('name', $object->getName());
45
        $this->assertEquals('header', $object->getHeader());
46
        $this->assertFalse($object->isSortable());
47
        $this->assertNull($object->getTemplate());
48
        $this->assertNull($object->getAlias());
49
    }
50
51
    public function testGetName()
52
    {
53
        $this->assertEquals('name', $this->object->getName());
54
    }
55
56
    public function testGetHeader()
57
    {
58
        $this->assertEquals('header', $this->object->getHeader());
59
    }
60
61
    public function testIsSortable()
62
    {
63
        $this->assertTrue($this->object->isSortable());
64
    }
65
66
    public function testGetTemplate()
67
    {
68
        $this->assertEquals('template.html.twig', $this->object->getTemplate());
69
    }
70
71
    public function testHasGetAlias()
72
    {
73
        $this->assertTrue($this->object->hasAlias());
74
        $alias = $this->object->getAlias();
75
        $this->assertInstanceOf(FieldAlias::class, $alias);
76
        $this->object = new Field('name', 'header', true, 'template.html.twig');
77
        $this->assertFalse($this->object->hasAlias());
78
        $this->assertEquals('ALIAS', $alias->getAbbr());
79
        $this->assertEquals('test', $alias->getRelation());
80
    }
81
82
    public function testGetAliasObject()
83
    {
84
        $item = new stdClass();
85
        $item->test = 123;
86
        $val = $this->object->getAliasObj($item);
87
        $this->assertEquals(123, $val);
88
    }
89
90
    /**
91
     * @throws \Exception
92
     */
93
    public function testGetColumnName()
94
    {
95
        $column = $this->object->getColumnName('ALIAS.ABCDEF');
96
        $this->assertEquals('ABCDEF', $column);
97
        $this->expectException(Exception::class);
98
        $this->object->getColumnName('OMG.CRASH');
99
    }
100
}
101