Completed
Push — master ( 2668e0...a58114 )
by Iakov
03:15
created

AddWhereStepTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
eloc 13
dl 0
loc 24
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testGetRequiredArtifacts() 0 4 1
A testExecute() 0 16 1
1
<?php
2
3
namespace Kami\ApiCoreBundle\Tests\RequestProcessor\Step\Common;
4
5
use Doctrine\ORM\QueryBuilder;
6
use Kami\ApiCoreBundle\RequestProcessor\Step\Item\AddWhereStep;
7
use Kami\Component\RequestProcessor\Artifact;
8
use Kami\Component\RequestProcessor\ArtifactCollection;
9
use PHPUnit\Framework\TestCase;
10
use Symfony\Component\HttpFoundation\Request;
11
12
class AddWhereStepTest extends TestCase
13
{
14
    public function testGetRequiredArtifacts()
15
    {
16
        $step = new AddWhereStep();
17
        $this->assertEquals(['query_builder', 'select_query_built', 'access_granted'], $step->getRequiredArtifacts());
18
    }
19
20
    public function testExecute()
21
    {
22
        $queryBuilderMock = $this->createMock(QueryBuilder::class);
23
        $queryBuilderMock->expects($this->any())->method('where')->willReturn($queryBuilderMock);
24
        $queryBuilderMock->expects($this->any())->method('setParameter')->willReturn($queryBuilderMock);
25
        $queryBuilderMock->expects($this->any())->method('setMaxResults')->willReturn($queryBuilderMock);
26
27
        $step = new AddWhereStep();
28
29
        $step->setArtifacts(new ArtifactCollection([
30
            new Artifact('query_builder', $queryBuilderMock)
31
        ]));
32
33
        $response = $step->execute(new Request());
34
        $this->assertInstanceOf(ArtifactCollection::class, $response);
35
        $this->assertEquals(true, $response->get('where_added')->getValue());
36
    }
37
}
38