It can be deployed normally on AWS

![image](https://user-images.githubusercontent.com/38454210/78279329-f1528180-7549-11ea-8aec-ba9620a16609.png)

![image](https://user-images.githubusercontent.com/38454210/78279477-25c63d80-754a-11ea-92bc-313e7950424c.png)


queue_arn = aws_stack.sqs_queue_arn(TEST_QUEUE_NAME_2)
        filter_policy = {'attr1': [{'numeric': ['>', 0, '<=', 100]}]}
        self.sns_client.subscribe(
            TopicArn=self.topic_arn,
            Protocol='sqs',
            Endpoint=queue_arn,
            Attributes={
                'FilterPolicy': json.dumps(filter_policy)
            }
        )
        # p
        message = u'This is a test message'
        self.sns_client.publish(TopicArn=self.topic_arn, Message=message,
                                MessageAttributes={'attr1': {'DataType': 'Number', 'StringValue': '99.12'}})
        messages = self.sqs_client.receive_message(QueueUrl=self.queue_url_2, VisibilityTimeout=0)['Messages']
        self.assertEqual(json.loads(messages[0]['Body'])['MessageAttributes']['attr1']['Value'], '99.12')
    def test_unknown_topic_publish(self):
        fake_arn = 'arn:aws:sns:us-east-1:123456789012:i_dont_exist'
        message = u'This is a test message'
        try:
            self.sns_client.publish(TopicArn=fake_arn, Message=message)
            self.fail('This call should not be successful as the topic does not exist')
        except ClientError as e:
            self.assertEqual(e.response['Error']['Code'], 'NotFound')
            self.assertEqual(e.response['Error']['Message'], 'Topic does not exist')
            self.assertEqual(e.response['ResponseMetadata']['HTTPStatusCode'], 404)
    def test_publish_sms(self):