/**
  * 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);
 }