示例#1
0
 public function testGetWithAutoAckAndMessage()
 {
     /** @var \Prophecy\Prophecy\ObjectProphecy|AMQPChannel $adapterChannel */
     $adapterChannel = $this->prophesize(AMQPChannel::class);
     /** @var \Prophecy\Prophecy\ObjectProphecy|Channel $channel */
     $channel = $this->prophesize(Channel::class);
     $options = $this->getDefaultOptionsProphet();
     $message = $this->prophesize(Message::class);
     $libMessage = $this->prophesize(AMQPMessage::class);
     $messageMapper = $this->prophesize(MessageMapper::class);
     $messageMapper->toMessage($libMessage->reveal())->shouldBeCalled()->willReturn($message->reveal());
     $adapterChannel->basic_get('queueName', true)->shouldBeCalled()->willReturn($libMessage->reveal());
     $channel->getResource()->willReturn($adapterChannel->reveal());
     $queue = new Queue();
     $queue->setOptions($options->reveal());
     $queue->setChannel($channel->reveal());
     $queue->setMessageMapper($messageMapper->reveal());
     static::assertSame($message->reveal(), $queue->get(true));
 }