/** * @dataProvider getLimitQueryDataProvider * * @param MassDeleteLimitResult $limitResult * @param bool $accessRestriction * @param bool $maxLimitRestriction * * @internal param $MassDeleteLimitResult $ */ public function testLimitQuery(MassDeleteLimitResult $limitResult, $accessRestriction = false, $maxLimitRestriction = false) { /** @var QueryBuilder|\PHPUnit_Framework_MockObject_MockObject $queryBuilder */ $queryBuilder = $this->getMockBuilder('Doctrine\\ORM\\QueryBuilder')->disableOriginalConstructor()->getMock(); /** @var MassActionHandlerArgs|\PHPUnit_Framework_MockObject_MockObject $args */ $args = $this->getMockBuilder('Oro\\Bundle\\DataGridBundle\\Extension\\MassAction\\MassActionHandlerArgs')->disableOriginalConstructor()->getMock(); $args->expects($this->once())->method('getResults')->willReturn(new DeletionIterableResult($queryBuilder)); if ($accessRestriction) { $this->helper->expects($this->once())->method('apply')->with($queryBuilder, 'DELETE'); } if ($maxLimitRestriction) { $queryBuilder->expects($this->once())->method('setMaxResults')->with($limitResult->getMaxLimit()); } $this->limiter->limitQuery($limitResult, $args); }
protected function setSearchExpects() { $this->entityRepository->expects($this->once())->method('createQueryBuilder')->will($this->returnValue($this->queryBuilder)); $this->queryBuilder->expects($this->once())->method('where')->will($this->returnSelf()); $this->queryBuilder->expects($this->exactly(2))->method('andWhere')->will($this->returnSelf()); $this->queryBuilder->expects($this->exactly(3))->method('setParameter')->will($this->returnSelf()); $this->queryBuilder->expects($this->exactly(2))->method('addOrderBy')->will($this->returnSelf()); $this->queryBuilder->expects($this->any())->method('expr')->will($this->returnValue($this->expr)); $this->aclHelper->expects($this->once())->method('apply')->will($this->returnValue($this->queryBuilder)); }
/** * @param array $column * @param array $expected * @param bool $invokes * * @dataProvider setParametersDataProvider */ public function testRelationGuess($column, $expected, $invokes) { $metadata = $this->getMockBuilder('Doctrine\\ORM\\Mapping\\ClassMetadata')->disableOriginalConstructor()->getMock(); $em = $this->getMockBuilder('Doctrine\\ORM\\EntityManager')->disableOriginalConstructor()->getMock(); $this->doctrineHelper->expects($this->any())->method('getEntityManager')->will($this->returnValue($em)); $em->expects($this->any())->method('getClassMetadata')->willReturn($metadata); if ($invokes) { $metadata->expects($this->any())->method('hasAssociation')->willReturn(true); $metadata->expects($this->once())->method('getAssociationMapping')->willReturn(['type' => 8]); $metadata->expects($this->once())->method('getSingleIdentifierFieldName')->willReturn('key'); $metadata->expects($this->once())->method('getFieldNames')->willReturn(['test']); $metadata->expects($this->once())->method('getTypeOfField')->willReturn('string'); $qb = $this->getMockBuilder('Doctrine\\ORM\\QueryBuilder')->setMethods(['getResult'])->disableOriginalConstructor()->getMock(); $repo = $this->getMockBuilder('Doctrine\\ORM\\EntityRepository')->disableOriginalConstructor()->getMock(); $this->aclHelper->expects($this->any())->method('apply')->willReturn($qb); $em->expects($this->any())->method('getRepository')->willReturn($repo); $repo->expects($this->any())->method('createQueryBuilder')->willReturn($qb); $qb->expects($this->once())->method('getResult')->willReturn([['key' => 'a1', 'test' => 'A1'], ['key' => 'a2', 'test' => 'A2']]); } $guessed = $this->guesser->guessColumnOptions('test', 'test', $column); $this->assertEquals($expected, $guessed); }
/** * @param string $search * @param int $page * @param int $perPage * @param array $foundElements * @param array $resultData * @param array $expectedIds * @return \PHPUnit_Framework_MockObject_MockObject */ protected function assertSearchCall($search, $page, $perPage, array $foundElements, array $resultData, array $expectedIds) { $searchResult = $this->getMockBuilder('Oro\\Bundle\\SearchBundle\\Query\\Result')->disableOriginalConstructor()->getMock(); $searchResult->expects($this->once())->method('getElements')->will($this->returnValue($foundElements)); $this->indexer->expects($this->once())->method('simpleSearch')->with($search, $page - 1, $perPage + 1, 'alias')->will($this->returnValue($searchResult)); $queryBuilder = $this->getMockBuilder('Doctrine\\ORM\\QueryBuilder')->disableOriginalConstructor()->getMock(); $query = $this->getMockBuilder('Doctrine\\ORM\\AbstractQuery')->disableOriginalConstructor()->setMethods(['getResult'])->getMockForAbstractClass(); $query->expects($this->once())->method('getResult')->will($this->returnValue($resultData)); $expr = $this->getMockBuilder('Doctrine\\ORM\\Query\\Expr')->disableOriginalConstructor()->getMock(); $expr->expects($this->once())->method('in')->with('e.id', $expectedIds)->will($this->returnSelf()); $queryBuilder->expects($this->once())->method('expr')->will($this->returnValue($expr)); $queryBuilder->expects($this->once())->method('where')->with($expr)->will($this->returnSelf()); $this->aclHelper->expects($this->once())->method('apply')->with($queryBuilder, 'VIEW')->will($this->returnValue($query)); $this->entityRepository->expects($this->any())->method('createQueryBuilder')->will($this->returnValue($queryBuilder)); return $searchResult; }
/** * @param string $search * @param int $page * @param int $perPage * @param array $foundElements * @param array $resultData * @param array $expectedIds * @return \PHPUnit_Framework_MockObject_MockObject */ protected function assertSearchCall($search, $page, $perPage, array $foundElements, array $resultData, array $expectedIds) { /* @var $searchResult Result|\PHPUnit_Framework_MockObject_MockObject */ $searchResult = $this->getMockBuilder('Oro\\Bundle\\SearchBundle\\Query\\Result')->disableOriginalConstructor()->getMock(); $searchResult->expects($this->once())->method('getElements')->willReturn($foundElements); $this->indexer->expects($this->once())->method('simpleSearch')->with($search, $page - 1, $perPage + 1, 'alias')->willReturn($searchResult); /* @var $queryBuilder QueryBuilder|\PHPUnit_Framework_MockObject_MockObject */ $queryBuilder = $this->getMockBuilder('Doctrine\\ORM\\QueryBuilder')->disableOriginalConstructor()->getMock(); /* @var $query AbstractQuery|\PHPUnit_Framework_MockObject_MockObject */ $query = $this->getMockBuilder('Doctrine\\ORM\\AbstractQuery')->disableOriginalConstructor()->setMethods(['getResult'])->getMockForAbstractClass(); $query->expects($this->once())->method('getResult')->willReturn($resultData); /* @var $expr Expr|\PHPUnit_Framework_MockObject_MockObject */ $expr = $this->getMockBuilder('Doctrine\\ORM\\Query\\Expr')->disableOriginalConstructor()->getMock(); $expr->expects($this->once())->method('in')->with('e.id', $expectedIds)->will($this->returnSelf()); $expr->expects($this->once())->method('asc')->with('e.email')->will($this->returnSelf()); $queryBuilder->expects($this->exactly(2))->method('expr')->willReturn($expr); $queryBuilder->expects($this->once())->method('where')->with($expr)->will($this->returnSelf()); $queryBuilder->expects($this->once())->method('addOrderBy')->with($expr)->will($this->returnSelf()); $queryBuilder->expects($this->any())->method('andWhere')->with('e.account = :account')->will($this->returnSelf()); $this->aclHelper->expects($this->once())->method('apply')->with($queryBuilder, 'VIEW')->willReturn($query); $this->entityRepository->expects($this->any())->method('createQueryBuilder')->willReturn($queryBuilder); return $searchResult; }