def describe_key_pairs(filters = {})
unless filters.is_a?(Hash)
Fog::Logger.deprecation("describe_key_pairs with #{filters.class} param is deprecated, use describe_key_pairs('key-name' => []) instead [light_black](#{caller.first})[/]")
filters = {'key-name' => [*filters]}
end
response = Excon::Response.new
key_set = self.data[:key_pairs].values
aliases = {'fingerprint' => 'keyFingerprint', 'key-name' => 'keyName'}
for filter_key, filter_value in filters
aliased_key = aliases[filter_key]
key_set = key_set.reject{|key_pair| ![*filter_value].include?(key_pair[aliased_key])}
end
response.status = 200
response.body = {
'requestId' => Fog::AWS::Mock.request_id,
'keySet' => key_set.map do |key_pair|
key_pair.reject {|key,value| !['keyFingerprint', 'keyName'].include?(key)}
end
}
response
end