/** * @dataProvider orderByProvider */ public function testAddOrderBy($alias, $orderBy, $expectedOrderBy) { foreach ($expectedOrderBy as $field => $order) { $this->queryBuilder->addOrderBy($field, $order)->shouldBeCalledTimes(1); } $this->addOrderByFunction->invokeArgs($this->orderByTrait, [$this->queryBuilder->reveal(), $alias, $orderBy]); }
public function testApplyToCollectionPaginationDisabled() { /** @var ObjectProphecy|Request $requestMock */ $requestMock = $this->prophesize('Symfony\\Component\\HttpFoundation\\Request'); /* @see PaginationExtension::applyToCollection */ $this->requestStackMock->getCurrentRequest()->willReturn($requestMock->reveal())->shouldBeCalledTimes(1); /* @see PaginationExtension::isPaginationEnabled */ $this->resourceMock->getEnablePaginationParameter()->willReturn('enablePagination')->shouldBeCalledTimes(1); $requestMock->get('enablePagination')->willReturn('true')->shouldBeCalledTimes(1); $this->resourceMock->isClientAllowedToEnablePagination()->willReturn(false)->shouldBeCalledTimes(1); $this->resourceMock->isPaginationEnabledByDefault()->willReturn(false)->shouldBeCalledTimes(1); /* @see PaginationExtension::getItemsPerPage */ $this->resourceMock->isClientAllowedToChangeItemsPerPage()->shouldNotBeCalled(); $this->resourceMock->getItemsPerPageParameter()->shouldNotBeCalled(); $requestMock->get('itemsPerPage')->shouldNotBeCalled(); /* @see PaginationExtension::getPage */ $this->resourceMock->getPageParameter()->shouldNotBeCalled(); $requestMock->get('page', 1)->shouldNotBeCalled(); /* @see PaginationExtension::applyToCollection */ $this->queryBuilderMock->setFirstResult(Argument::any())->shouldNotBeCalled(); $this->queryBuilderMock->setMaxResults(Argument::any())->shouldNotBeCalled(); $extension = new PaginationExtension($this->managerRegistryMock->reveal(), $this->requestStackMock->reveal()); $extension->applyToCollection($this->resourceMock->reveal(), $this->queryBuilderMock->reveal()); }