Completed
Pull Request — master (#9)
by Roman
03:37
created

PaginateStepTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 40
rs 10
c 0
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A testRequiresBefore() 0 4 1
1
<?php
2
3
namespace Kami\ApiCoreBundle\Tests\RequestProcessor\Step\Common;
4
5
use Doctrine\ORM\EntityManagerInterface;
6
use Doctrine\ORM\Query;
7
use Doctrine\ORM\QueryBuilder;
8
use Doctrine\ORM\Tools\Pagination\Paginator;
9
use Kami\ApiCoreBundle\RequestProcessor\ProcessorResponse;
10
use Kami\ApiCoreBundle\RequestProcessor\Step\Common\BuildSelectQueryStep;
11
use Kami\ApiCoreBundle\RequestProcessor\Step\Common\GetEntityFromReflectionStep;
12
use Kami\ApiCoreBundle\RequestProcessor\Step\Common\GetReflectionFromRequestStep;
13
use Kami\ApiCoreBundle\RequestProcessor\Step\Common\HandleRequestStep;
14
use Kami\ApiCoreBundle\RequestProcessor\Step\Common\PaginateStep;
15
use Kami\ApiCoreBundle\Tests\Entity\MyModel;
16
use Kami\ApiCoreBundle\Tests\fixtures\Entity;
17
use PHPUnit\Framework\TestCase;
18
use Symfony\Component\Form\Form;
19
use Symfony\Component\HttpFoundation\Request;
20
use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
21
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
22
23
class PaginateStepTest extends TestCase
24
{
25
26
    //todo paginator tests
27
//    public function testExecute()
28
//    {
29
//        $paginatorMock = $this->createMock(Paginator::class);
30
//        $paginatorMock->expects($this->any())->method('__construct')->willReturn($paginatorMock);
31
//        $paginatorMock->expects($this->any())->method('count')->willReturn(10);
32
//
33
//        $queryBuilderMock = $this->createMock(QueryBuilder::class);
34
//        $queryBuilderMock->expects($this->any())->method('getQuery')->willReturn($queryMock);
35
//
36
//        $step = new PaginateStep(10);
37
//        $request = new Request();
38
//        $step->setRequest($request);
39
//        $step->setPreviousResponse(new ProcessorResponse($request, ['query_builder' => $queryBuilderMock]));
40
//
41
//        $response = $step->execute();
42
//        $this->assertInstanceOf(ProcessorResponse::class, $response);
43
//        $this->assertInstanceOf(Form::class, $response->getData()['form']);
44
//    }
45
46
//    public function testExecuteFailure()
47
//    {
48
//        $formMock = $this->createMock(Form::class);
49
//        $formMock->expects($this->any())->method('isSubmitted')->willReturn(false);
50
//        $step = new HandleRequestStep();
51
//        $request = new Request();
52
//        $step->setRequest($request);
53
//        $step->setPreviousResponse(new ProcessorResponse($request, ['form' => $formMock]));
54
//
55
//        $this->expectException(BadRequestHttpException::class);
56
//        $response = $step->execute();
57
//    }
58
//    
59
    public function testRequiresBefore()
60
    {
61
        $step = new PaginateStep(10);
62
        $this->assertEquals([BuildSelectQueryStep::class], $step->requiresBefore());
63
    }
64
}
65