コード例 #1
0
 /**
  * Collect activities changes
  *
  * @param OnFlushEventArgs $args
  */
 public function onFlush(OnFlushEventArgs $args)
 {
     $entityManager = $args->getEntityManager();
     $unitOfWork = $entityManager->getUnitOfWork();
     $this->collectInsertedEntities($unitOfWork->getScheduledEntityInsertions());
     $this->collectUpdates($unitOfWork);
     $this->collectDeletedEntities($unitOfWork->getScheduledEntityDeletions());
     if ($this->activityListManager->processUpdatedEntities($this->updatedEntities, $entityManager)) {
         $this->updatedEntities = [];
     }
 }
コード例 #2
0
 public function testProcessUpdateEntities()
 {
     $em = $this->getMockBuilder('Doctrine\\ORM\\EntityManager')->disableOriginalConstructor()->getMock();
     $testEntity = new \stdClass();
     $resultActivityList = new ActivityList();
     $this->chainProvider->expects($this->once())->method('getUpdatedActivityList')->with($testEntity)->willReturn($resultActivityList);
     $em->expects($this->once())->method('persist')->with($resultActivityList);
     $uow = $this->getMockBuilder('Doctrine\\ORM\\UnitOfWork')->disableOriginalConstructor()->getMock();
     $em->expects($this->once())->method('getUnitOfWork')->willReturn($uow);
     $metaData = $this->getMockBuilder('Doctrine\\ORM\\Mapping\\ClassMetadata')->disableOriginalConstructor()->getMock();
     $em->expects($this->once())->method('getClassMetadata')->with('Oro\\Bundle\\ActivityListBundle\\Entity\\ActivityList')->willReturn($metaData);
     $uow->expects($this->once())->method('computeChangeSet')->with($metaData, $resultActivityList);
     $this->assertTrue($this->manager->processUpdatedEntities([$testEntity], $em));
 }