public function testRemoveByEntity() { $entity = $this->createEntities(); $query = $this->getMockBuilder('Doctrine\\ORM\\AbstractQuery')->disableOriginalConstructor()->setMethods(['execute'])->getMockForAbstractClass(); $queryBuilder = $this->mockGetSnapshotDeleteQueryBuilderByEntitiesFunction($entity); $queryBuilder->expects($this->exactly(2))->method('getQuery')->will($this->returnValue($query)); $this->repository->removeByEntity(reset($entity)); }
/** * @param SegmentSnapshotRepository $segmentSnapshotRepository * @param array $expectedCondition */ protected function assertSegmentSnapshotHasBeenDeletedCorrectly($segmentSnapshotRepository, $expectedCondition) { $selectQB = $segmentSnapshotRepository->createQueryBuilder('snp'); foreach ($expectedCondition as $params) { $suffix = uniqid(); $selectQB->select('snp.id')->orWhere($selectQB->expr()->andX($selectQB->expr()->in('snp.segment', ':segmentIds' . $suffix), $selectQB->expr()->in('snp.entityId', ':entityIds' . $suffix)))->setParameter('segmentIds' . $suffix, $params['segmentIds'])->setParameter('entityIds' . $suffix, $params['entityIds']); } $entities = $selectQB->getQuery()->getResult(); $this->assertEmpty($entities); }