/**
  * @covers ::__construct
  * @covers ::getContent
  */
 public function testMessageContentIsLazyLoaded()
 {
     $uniq_id = uniqid();
     $message_interface = $this->getMock('Hodor\\MessageQueue\\Adapter\\MessageInterface');
     $message_interface->expects($this->once())->method('getContent')->willReturn(json_encode($uniq_id));
     $message = new IncomingMessage($message_interface);
     $this->assertSame($uniq_id, $message->getContent());
     $this->assertSame($uniq_id, $message->getContent());
 }
Exemple #2
0
 /**
  * @param IncomingMessage $message
  * @param DateTime $started_running_at
  * @param callable $mark_finished
  * @throws BufferedJobNotFoundException
  */
 private function markJobAsFinished(IncomingMessage $message, DateTime $started_running_at, callable $mark_finished)
 {
     $content = $message->getContent();
     $meta = $content['meta'];
     $meta['started_running_at'] = $started_running_at->format('c');
     try {
         $mark_finished($meta);
         $message->acknowledge();
     } catch (BufferedJobNotFoundException $exception) {
         $message->acknowledge();
         throw $exception;
     }
 }