public function testThreadCreateWhenNotFound() { $emailFromThread = $this->getMock('Oro\\Bundle\\EmailBundle\\Entity\\Email'); $emailFromThread->expects($this->never())->method('getThread'); $this->emailThreadProvider->expects($this->once())->method('getEmailThread')->will($this->returnValue(null)); $this->emailThreadProvider->expects($this->never())->method('getEmailReferences')->will($this->returnValue([$emailFromThread])); $email = $this->getMock('Oro\\Bundle\\EmailBundle\\Entity\\Email'); $email->expects($this->exactly(1))->method('getThread')->will($this->returnValue(null)); $emailFromThread->expects($this->never())->method('setThread'); $entityManager = $this->getMockBuilder('Doctrine\\ORM\\EntityManager')->disableOriginalConstructor()->getMock(); $entityManager->expects($this->never())->method('persist'); $entityManager->expects($this->exactly(1))->method('flush'); $this->manager->addEmailToQueueThreadUpdate($email); $this->manager->handlePostFlush(new PostFlushEventArgs($entityManager)); $this->assertEmpty($this->manager->getQueueThreadUpdate()); }