From 930ac58a4d6b038623d731e4bacf3ba5f044b969 Mon Sep 17 00:00:00 2001 From: Jot Date: Mon, 3 Aug 2015 22:48:15 +0200 Subject: [PATCH] Added sns backend to servers, added some tests to check backend --- moto/backends.py | 2 ++ tests/test_cloudformation/test_server.py | 2 +- tests/test_iam/test_server.py | 25 ++++++++++++++++++++++++ tests/test_sns/test_server.py | 23 ++++++++++++++++++++++ 4 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 tests/test_iam/test_server.py diff --git a/moto/backends.py b/moto/backends.py index 817db25b..b46d56c0 100644 --- a/moto/backends.py +++ b/moto/backends.py @@ -16,6 +16,7 @@ from moto.redshift import redshift_backend from moto.s3 import s3_backend from moto.s3bucket_path import s3bucket_path_backend from moto.ses import ses_backend +from moto.sns import sns_backend from moto.sqs import sqs_backend from moto.sts import sts_backend from moto.route53 import route53_backend @@ -38,6 +39,7 @@ BACKENDS = { 's3': s3_backend, 's3bucket_path': s3bucket_path_backend, 'ses': ses_backend, + 'sns': sns_backend, 'sqs': sqs_backend, 'sts': sts_backend, 'route53': route53_backend diff --git a/tests/test_cloudformation/test_server.py b/tests/test_cloudformation/test_server.py index 7bfed6de..ffbc5c60 100644 --- a/tests/test_cloudformation/test_server.py +++ b/tests/test_cloudformation/test_server.py @@ -15,7 +15,7 @@ Test the different server responses def test_cloudformation_server_get(): backend = server.create_backend_app("cloudformation") stack_name = 'test stack' - test_client = backend.test_client(service="cloudformation") + test_client = backend.test_client() template_body = { "Resources": {}, } diff --git a/tests/test_iam/test_server.py b/tests/test_iam/test_server.py new file mode 100644 index 00000000..1b1c3bfe --- /dev/null +++ b/tests/test_iam/test_server.py @@ -0,0 +1,25 @@ +from __future__ import unicode_literals + +import json + +import re +import sure # noqa + +import moto.server as server + +''' +Test the different server responses +''' + + +def test_iam_server_get(): + backend = server.create_backend_app("iam") + test_client = backend.test_client() + + group_data = test_client.action_data("CreateGroup", GroupName="test group", Path="/") + group_id = re.search("(.*)", group_data).groups()[0] + + groups_data = test_client.action_data("ListGroups") + groups_ids = re.findall("(.*)", groups_data) + + assert group_id in groups_ids \ No newline at end of file diff --git a/tests/test_sns/test_server.py b/tests/test_sns/test_server.py index baffc488..1813f779 100644 --- a/tests/test_sns/test_server.py +++ b/tests/test_sns/test_server.py @@ -1 +1,24 @@ from __future__ import unicode_literals + +import json + +import re +import sure # noqa + +import moto.server as server + +''' +Test the different server responses +''' + + +def test_sns_server_get(): + backend = server.create_backend_app("sns") + test_client = backend.test_client() + + topic_data = test_client.action_json("CreateTopic", Name="test topic") + topic_arn = topic_data["CreateTopicResponse"]["CreateTopicResult"]["TopicArn"] + topics_data = test_client.action_json("ListTopics") + topics_arns = [t["TopicArn"] for t in topics_data["ListTopicsResponse"]["ListTopicsResult"]["Topics"]] + + assert topic_arn in topics_arns \ No newline at end of file