public function testFindMessagesLimit() { $conversation = $this->driver->createConversationModel(); $conversation->setSubject('Subject'); $this->driver->persistConversation($conversation); $firstMessage = $this->driver->createMessageModel($conversation, $this->createPerson(), 'Body1'); $this->driver->persistMessage($firstMessage); $secondMessage = $this->driver->createMessageModel($conversation, $this->createPerson(), 'Body2'); $this->driver->persistMessage($secondMessage); $thirdMessage = $this->driver->createMessageModel($conversation, $this->createPerson(), 'Body3'); $this->driver->persistMessage($thirdMessage); $this->driver->flush(); $fetched = $this->driver->findMessages($conversation, 0, 2, 'ASC'); $this->assertInstanceOf('Doctrine\\Common\\Collections\\Collection', $fetched); $this->assertCount(2, $fetched); $this->assertMessagesEquals($firstMessage, $fetched[0]); $this->assertMessagesEquals($secondMessage, $fetched[1]); $fetched = $this->driver->findMessages($conversation, 1, 2, 'ASC'); $this->assertInstanceOf('Doctrine\\Common\\Collections\\Collection', $fetched); $this->assertCount(2, $fetched); $this->assertMessagesEquals($secondMessage, $fetched[0]); $this->assertMessagesEquals($thirdMessage, $fetched[1]); }
/** * Create and persist a message object. * * @param ConversationInterface $conversation * @param PersonInterface $sender * @param string $body * * @return MessageInterface */ private function createAndPersistMessage(ConversationInterface $conversation, PersonInterface $sender, $body) { $message = $this->driver->createMessageModel($conversation, $sender, $body); $this->driver->persistMessage($message); return $message; }