def describe_event_subscriptions(options={})
response = Excon::Response.new
name = options['SubscriptionName']
subscriptions = self.data[:event_subscriptions].values
subscriptions = subscriptions.select { |s| s['CustSubscriptionId'] == name } if name
non_active = self.data[:event_subscriptions].values.select { |s| s['Status'] != 'active' }
non_active.each do |s|
name = s['CustSubscriptionId']
if s['Status'] == 'creating'
s['Status'] = 'active'
self.data[:event_subscriptions][name] = s
elsif s['Status'] == 'deleting'
self.data[:event_subscriptions].delete(name)
end
end
if options['SubscriptionName'] && subscriptions.empty?
raise Fog::AWS::RDS::NotFound.new("Event Subscription #{options['SubscriptionName']} not found.")
end
response.body = {
"ResponseMetadata" => {"RequestId" => Fog::AWS::Mock.request_id},
"DescribeEventSubscriptionsResult" => {"EventSubscriptionsList" => subscriptions}
}
response
end