public function testSQSAdapterDeleteMessageWithSqsException() { $this->mockGenerator->orphanize('__construct'); $this->mockGenerator->shuntParentClassCalls(); $mockSqsClient = new \mock\Aws\Sqs\SqsClient(); $mockQueueUrlModel = new \mock\Guzzle\Service\Resource\Model(); $priorityHandler = new ThreeLevelPriorityHandler(); $sqsAdapter = new \ReputationVIP\QueueClient\Adapter\SQSAdapter($mockSqsClient, $priorityHandler); $this->mockGenerator->orphanize('__construct'); $this->mockGenerator->shuntParentClassCalls(); $sqsException = new \mock\Aws\Sqs\Exception\SqsException(); $mockSqsClient->getMockController()->getQueueUrl = function () use($mockQueueUrlModel) { return $mockQueueUrlModel; }; $mockQueueUrlModel->getMockController()->get = function () use($mockQueueUrlModel) { return null; }; $mockSqsClient->getMockController()->deleteMessage = function () use($sqsException) { throw $sqsException; }; $this->exception(function () use($sqsAdapter, $priorityHandler) { $sqsAdapter->deleteMessage('testQueue', ['priority' => $priorityHandler->getHighest()->getLevel(), 'ReceiptHandle' => 'testReceiptHandle']); }); }
public function testSQSAdapterDeleteMessageWithNoMessagePriority() { $this->mockGenerator->orphanize('__construct'); $this->mockGenerator->shuntParentClassCalls(); $mockSqsClient = new \mock\Aws\Sqs\SqsClient(); $SQSAdapter = new \ReputationVIP\QueueClient\Adapter\SQSAdapter($mockSqsClient); $this->exception(function () use($SQSAdapter) { $SQSAdapter->deleteMessage('testQueue', ['ReceiptHandle' => 'testReceiptHandle']); }); }