When a subscription is created using cloudformation:
```
"ProfileChangedSubscription": {
      "Type": "AWS::SNS::Subscription",
      "Properties": {
        "Endpoint": {
          "Fn::GetAtt": [
            "ProfileChangedQueue",
            "Arn"
          ]
        },
        "Protocol": "sqs",
        "FilterPolicy": {
          "eventType": [
            "created"
          ]
        },
        "TopicArn": {
          "Fn::ImportValue": {
            "Fn::Sub": "${ProfilesProfilePublishStack}-ProfileChangedTopic"
          }
        }
      }
    }
```

The specified subscription filter policy is not created. When I run `get-subscription-attributes`, I get information about non-existing filter policy:

```
{
    "Attributes": {
        "TopicArn": "arn:aws:sns:us-east-1:000000000000:profile-changed-topic",
        "Endpoint": "arn:aws:sqs:us-east-1:000000000000:profile-changed-queue",
        "Protocol": "sqs",
        "SubscriptionArn": "arn:aws:sns:us-east-1:000000000000:profile-changed-topic:936a58be-525b-4228-bfdb-c4b2f6048e8c",
        "FilterPolicy": "None"
    }
}
```
cloudformation = aws_stack.connect_to_service('cloudformation')
        invalid_json = '{"this is invalid JSON"="bobbins"}'
        try:
            cloudformation.validate_template(TemplateBody=invalid_json)
            self.fail('Should raise ValidationError')
        except (ClientError, ResponseParserError) as err:
            if isinstance(err, ClientError):
                self.assertEqual(err.response['ResponseMetadata']['HTTPStatusCode'], 400)
                self.assertEqual(err.response['Error']['Message'], 'Template Validation Error')
    def test_list_stack_resources_returns_queue_urls(self):
        cloudformation = aws_stack.connect_to_resource('cloudformation')
        template = template_deployer.template_to_json(load_file(TEST_TEMPLATE_2))
        stack_name = 'stack-%s' % short_uid()
        cloudformation.create_stack(StackName=stack_name, TemplateBody=template)
        def check_stack():
            stack = get_stack_details(stack_name)
            self.assertEqual(stack['StackStatus'], 'CREATE_COMPLETE')
        retry(check_stack, retries=3, sleep=2)
        stack_summaries = list_stack_resources(stack_name)
        queue_urls = get_queue_urls()
        topic_arns = get_topic_arns()
        stack_queues = [r for r in stack_summaries if r['ResourceType'] == 'AWS::SQS::Queue']
        for resource in stack_queues:
            self.assertIn(resource['PhysicalResourceId'], queue_urls)
        stack_topics = [r for r in stack_summaries if r['ResourceType'] == 'AWS::SNS::Topic']
        for resource in stack_topics:
            self.assertIn(resource['PhysicalResourceId'], topic_arns)
    def test_create_change_set(self):