Test Failed
Pull Request — master (#17)
by Denis
10:14
created

NotBetweenTest::testGetExpr()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 25
Code Lines 17

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 17
nc 1
nop 0
dl 0
loc 25
rs 9.7
c 0
b 0
f 0
1
<?php declare(strict_types=1);
2
3
namespace Tests\Unit\Artprima\QueryFilterBundle\Query\Condition;
4
5
use Artprima\QueryFilterBundle\Query\Condition\NotBetween;
6
use Artprima\QueryFilterBundle\Query\Filter;
7
use Doctrine\ORM\Query\Expr;
8
use Doctrine\ORM\QueryBuilder;
9
use PHPUnit\Framework\TestCase;
10
11
/**
12
 * Class NotBetweenTest
13
 *
14
 * @author Denis Voytyuk <[email protected]>
15
 */
16
class NotBetweenTest extends TestCase
17
{
18
    public function testGetExpr()
19
    {
20
        $qb = $this->getMockBuilder(QueryBuilder::class)
21
            ->disableOriginalConstructor()
22
            ->getMock();
23
24
        $qb
25
            ->expects(self::never())
26
            ->method('expr');
27
28
        $qb
29
            ->expects($this->exactly(2))
30
            ->method('setParameter')
31
            ->withConsecutive(['x0', 1], ['y0', 10])
32
            ->willReturn($qb);
33
34
        $condition = new NotBetween();
35
36
        $expr = $condition->getExpr($qb, 0, (new Filter())
37
            ->setField('t.dummy')
38
            ->setX('1')
39
            ->setY('10')
40
        );
41
42
        self::assertSame('t.dummy NOT BETWEEN :x0 AND :y0', (string)$expr);
43
    }
44
}