From dbf2368aa65993c5cc1e95679f9b1f23bcda75e3 Mon Sep 17 00:00:00 2001 From: Steve Pulec Date: Thu, 18 Apr 2013 23:07:24 -0400 Subject: [PATCH] Implement SQS get_queue_url. Closes #18 --- moto/sqs/responses.py | 15 +++++++++++++++ tests/test_sqs/test_sqs.py | 10 ++++++++++ 2 files changed, 25 insertions(+) diff --git a/moto/sqs/responses.py b/moto/sqs/responses.py index b9bf9130aef2..484fe681dc6f 100644 --- a/moto/sqs/responses.py +++ b/moto/sqs/responses.py @@ -17,6 +17,12 @@ def create_queue(self): template = Template(CREATE_QUEUE_RESPONSE) return template.render(queue=queue) + def get_queue_url(self): + queue_name = self.querystring.get("QueueName")[0] + queue = sqs_backend.get_queue(queue_name) + template = Template(GET_QUEUE_URL_RESPONSE) + return template.render(queue=queue) + def list_queues(self): queues = sqs_backend.list_queues() template = Template(LIST_QUEUES_RESPONSE) @@ -143,6 +149,15 @@ def receive_message(self): """ +GET_QUEUE_URL_RESPONSE = """ + + http://sqs.us-east-1.amazonaws.com/123456789012/{{ queue.name }} + + + 470a6f13-2ed9-4181-ad8a-2fdea142988e + +""" + LIST_QUEUES_RESPONSE = """ {% for queue in queues %} diff --git a/tests/test_sqs/test_sqs.py b/tests/test_sqs/test_sqs.py index 040a84afa693..eeb22ec96646 100644 --- a/tests/test_sqs/test_sqs.py +++ b/tests/test_sqs/test_sqs.py @@ -18,6 +18,16 @@ def test_create_queue(): all_queues[0].get_timeout().should.equal(60) +@mock_sqs +def test_get_queue(): + conn = boto.connect_sqs('the_key', 'the_secret') + conn.create_queue("test-queue", visibility_timeout=60) + + queue = conn.get_queue("test-queue") + queue.name.should.equal("test-queue") + queue.get_timeout().should.equal(60) + + @mock_sqs def test_delete_queue(): conn = boto.connect_sqs('the_key', 'the_secret')