public function testApplyChangeSetOne2Many() { $this->logrepo->getLoggableListener()->setUsername('testUser'); $art1 = new RelatedArticle(); $art1->setTitle('Title'); $art1->setContent('Content'); $comment = new Comment(); $comment->setSubject('Subject'); $comment->setMessage('Message'); $art1->addComment($comment); $this->em->persist($comment); $this->em->persist($art1); $this->em->flush(); $comment = new Comment(); $comment->setSubject('Subject'); $comment->setMessage('Message'); $comment->setScheduledChangeDate(new \DateTime("+ 1 second")); $art1->addComment($comment); $this->em->persist($comment); $this->assertCount(2, $art1->getComments()); $this->em->flush(); $this->assertCount(1, $art1->getComments()); $this->em->clear(); $art1 = $this->em->find(get_class($art1), $art1->getId()); $this->assertCount(1, $art1->getComments()); sleep(1); $this->changeservice->applyChanges(); $this->assertEquals(1, $this->changeservice->getProcessed()); $this->assertCount(2, $art1->getComments()); $this->em->flush(); $this->em->clear(); $art1 = $this->em->find(get_class($art1), $art1->getId()); $this->assertCount(2, $art1->getComments()); $comment = $art1->getComments()->first(); $this->assertEquals('Subject', $comment->getSubject()); $this->assertEquals('Message', $comment->getMessage()); }