/** * @covers AMQPy\AbstractConsumer::failure */ public function testFailure() { $listener = $this->getMock('AMQPy\\AbstractListener', [], [], '', false); $delivery = $this->getMock('\\AMQPy\\Client\\Delivery', [], [], '', false); $listener->expects($this->at(0))->method('resend')->with($this->equalTo($delivery)); $e = $this->getMock('\\Exception', [], [], '', false); $this->object->failure($e, $delivery, $listener); }
public function feed(Delivery $delivery, AbstractConsumer $consumer) { $consumer->before($delivery, $this); $consumer_exception = null; $consume_result = null; $consume_payload = null; try { $consume_payload = $this->getSerializers()->get($delivery->getProperties()->getContentType())->parse($delivery->getBody()); $consume_result = $consumer->consume($consume_payload, $delivery, $this); } catch (Exception $e) { $consumer_exception = $e; } if ($consumer_exception) { $consumer->failure($consumer_exception, $delivery, $this); } else { $consumer->after($consume_result, $delivery, $this); } $consumer->always($consume_result, $consume_payload, $delivery, $this, $consumer_exception); }