/**
  * @test
  */
 public function waitAndReserveWithFinishRemovesMessage()
 {
     $payload = 'A message';
     $messageId = $this->queue->submit($payload);
     $message = $this->queue->waitAndReserve(1);
     $this->assertNotNull($message, 'waitAndReserve should receive message');
     $this->assertSame($payload, $message->getPayload(), 'message should have payload as before');
     $message = $this->queue->peek();
     $this->assertEquals([], $message, 'no message should be present in queue');
     $this->assertTrue($this->queue->finish($messageId));
 }