Passed
Push — master ( 7abca6...282bb4 )
by Florian
01:26 queued 11s
created

SearchTest   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2
Metric Value
dl 0
loc 50
wmc 5
lcom 1
cbo 2
rs 10

5 Methods

Rating   Name   Duplication   Size   Complexity  
A testConstruct() 0 7 1
A testDefaults() 0 8 1
A testAccessors() 0 13 1
A testQueryFilter() 0 5 1
A createQueryColumnFilterSearch() 0 10 1
1
<?php
2
3
namespace Fmaj\LaposteDatanovaBundle\Tests\Model;
4
5
use Fmaj\LaposteDatanovaBundle\Model\Search;
6
7
class SearchTest extends \PHPUnit_Framework_TestCase
8
{
9
    public function testConstruct()
10
    {
11
        $dataset = uniqid();
12
        $search = new Search($dataset);
13
        $this->assertEquals($dataset, $search->getDataset());
14
        $this->assertCount(1, $search->getParameters());
15
    }
16
17
    public function testDefaults()
18
    {
19
        $dataset = uniqid();
20
        $search = new Search($dataset);
21
        $this->assertEquals(0, $search->getStart());
22
        $this->assertEquals(10, $search->getRows());
23
        $this->assertNull($search->getSort());
24
    }
25
26
    public function testAccessors()
27
    {
28
        $dataset = uniqid();
29
        $search = new Search($dataset);
30
        $search->setStart(10);
31
        $this->assertEquals(10, $search->getStart());
32
        $search->setRows(5);
33
        $this->assertEquals(5, $search->getRows());
34
        $search->setSort('test');
35
        $this->assertEquals('test', $search->getSort());
36
        $search->setLang('fr');
37
        $this->assertEquals('fr', $search->getLang());
38
    }
39
40
    public function testQueryFilter()
41
    {
42
        $this->createQueryColumnFilterSearch(uniqid(), uniqid(), ':');
43
        $this->createQueryColumnFilterSearch(uniqid(), uniqid(), '=');
44
    }
45
46
    private function createQueryColumnFilterSearch($column, $value, $delimiter = ':')
47
    {
48
        $filter = sprintf('%s%s%s', $column, $delimiter, $value);
49
        $dataset = uniqid();
50
        $search = new Search($dataset);
51
        $search->setFilter($filter);
52
        $this->assertEquals($filter, $search->getFilter());
53
        $this->assertEquals($column, $search->getFilterColumn());
54
        $this->assertEquals($value, $search->getFilterValue());
55
    }
56
}
57