/** * Retrieves Message Content * * @param \Zend\Mail\Storage\Message $imapMessage * @return string */ private function processContent($imapMessage) { $messageContent = null; if ($imapMessage->isMultipart()) { foreach (new \RecursiveIteratorIterator($imapMessage) as $part) { $headers = $part->getHeaders(); if ($headers->get('contenttype')) { $type = $headers->get('contenttype')->getType(); if ($type == \Zend\Mime\Mime::TYPE_HTML) { $messageContent = $this->getMessageContentDecoded($part); break; } elseif ($type == \Zend\Mime\Mime::TYPE_TEXT) { $messageContent = $this->getMessageContentDecoded($part); } } } } else { $messageContent = $this->getMessageContentDecoded($imapMessage); } $emailFilter = new EmailFilterService($messageContent); $messageContent = $emailFilter->recognizeUsefulContent(); return $messageContent; }
/** * @test */ public function thatCommentContainsOnlyLastResponse() { $rawComment = self::DUMMY_COMMENT_CONTENT . EmailFilterService::DELIMITER_LINE . self::DUMMY_COMMENT_CONTENT . EmailFilterService::DELIMITER_LINE . self::DUMMY_COMMENT_CONTENT; $this->emailFilterService->expects($this->once())->method('recognizeUsefulContent')->with($this->equalTo($rawComment))->will($this->returnValue(self::DUMMY_CLEANED_COMMENT_CONTENT)); $this->emailFilterService->recognizeUsefulContent($rawComment); }