Skip to content

Commit

Permalink
SqsQueueClient: in boto3 sqs init use config with max_retries
Browse files Browse the repository at this point in the history
use unittest.skip instead of commenting out a test
  • Loading branch information
holger-zeit committed Apr 11, 2018
1 parent 7ea6036 commit cf09a01
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 13 deletions.
6 changes: 5 additions & 1 deletion eb_sqs/aws/sqs_queue_client.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from __future__ import absolute_import, unicode_literals

import boto3
from botocore.config import Config
from botocore.exceptions import ClientError

from eb_sqs import settings
Expand All @@ -10,7 +11,10 @@
class SqsQueueClient(QueueClient):
def __init__(self):
# type: () -> None
self.sqs = boto3.resource('sqs', region_name=settings.AWS_REGION)
self.sqs = boto3.resource('sqs',
region_name=settings.AWS_REGION,
config=Config(retries={'max_attempts': settings.AWS_MAX_RETRIES})
)
self.queue_cache = {}

def _get_queue(self, queue_name):
Expand Down
25 changes: 13 additions & 12 deletions eb_sqs/tests/aws/tests_aws_queue_client.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
from __future__ import absolute_import, unicode_literals

from unittest import TestCase
import time
from unittest import TestCase, skip

import boto3
import time
from moto import mock_sqs

from eb_sqs import settings
from eb_sqs.aws.sqs_queue_client import SqsQueueClient
from eb_sqs.worker.queue_client import QueueDoesNotExistException


class AwsQueueClientTest(TestCase):
Expand Down Expand Up @@ -35,17 +36,17 @@ def test_add_message_delayed(self):
queue.reload()
self.assertEqual(queue.attributes["ApproximateNumberOfMessages"], '0')

time.sleep(delay+0.1)
time.sleep(delay + 0.1)

queue.reload()
self.assertEqual(queue.attributes["ApproximateNumberOfMessages"], '1')

# Disabled because current mock_sqs doesn't support invalid queue call
#@mock_sqs()
#def test_add_message_wrong_queue(self):
# sqs = boto3.resource('sqs')
# queue = sqs.create_queue(QueueName='default')
# queue_client = SqsQueueClient()
#
# with self.assertRaises(QueueDoesNotExistException):
# queue_client.add_message('invalid', 'msg', 0)
@skip("Disabled because current mock_sqs doesn't support invalid queue call")
@mock_sqs()
def test_add_message_wrong_queue(self):
sqs = boto3.resource('sqs')
queue = sqs.create_queue(QueueName='default')
queue_client = SqsQueueClient()

with self.assertRaises(QueueDoesNotExistException):
queue_client.add_message('invalid', 'msg', 0)

0 comments on commit cf09a01

Please sign in to comment.