/** * @param Email $emailEntity * * @return array */ public function getThreadAttachments(Email $emailEntity) { $attachments = []; $threadEmails = $this->emailThreadProvider->getThreadEmails($this->em, $emailEntity); /** @var Email $threadEmail */ foreach ($threadEmails as $threadEmail) { if ($threadEmail->getEmailBody()->getHasAttachments()) { $emailAttachments = $threadEmail->getEmailBody()->getAttachments(); foreach ($emailAttachments as $emailAttachment) { $attachments[] = $this->emailAttachmentTransformer->entityToModel($emailAttachment); } } } return $attachments; }
public function testEntityToModel() { $attachmentEntity = $this->getMock('Oro\\Bundle\\EmailBundle\\Entity\\EmailAttachment'); $attachmentEntity->expects($this->once())->method('getId')->willReturn(1); $emailAttachmentContent = $this->getMock('Oro\\Bundle\\EmailBundle\\Entity\\EmailAttachmentContent'); $emailAttachmentContent->expects($this->once())->method('getContent')->willReturn('Some content'); $attachmentEntity->expects($this->once())->method('getContent')->willReturn($emailAttachmentContent); $emailBody = $this->getMock('Oro\\Bundle\\EmailBundle\\Entity\\EmailBody'); $emailBody->expects($this->once())->method('getCreated')->willReturn('2015-04-13 19:09:32'); $attachmentEntity->expects($this->once())->method('getEmailBody')->willReturn($emailBody); $attachmentModel = $this->emailAttachmentTransformer->entityToModel($attachmentEntity); $this->assertInstanceOf('Oro\\Bundle\\EmailBundle\\Form\\Model\\EmailAttachment', $attachmentModel); $this->assertEquals(1, $attachmentModel->getId()); $this->assertEquals(12, $attachmentModel->getFileSize()); $this->assertEquals('2015-04-13 19:09:32', $attachmentModel->getModified()); $this->assertEquals(2, $attachmentModel->getType()); $this->assertEquals($attachmentEntity, $attachmentModel->getEmailAttachment()); }