1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

[aws|storage] Add mock for Fog::Storage::AWS#delete_multiple_objects

This commit is contained in:
Garret Alfert 2012-01-04 22:14:18 +01:00 committed by Timur Alperovich
parent 357b85f34d
commit dfc2026f45
2 changed files with 21 additions and 2 deletions

View file

@ -55,6 +55,27 @@ module Fog
end
end
class Mock # :nodoc:all
def delete_multiple_objects(bucket_name, object_names, options = {})
response = Excon::Response.new
if bucket = self.data[:buckets][bucket_name]
response.status = 200
response.body = { 'DeleteResult' => [] }
object_names.each do |object_name|
bucket[:objects].delete(object_name)
deleted_entry = { 'Deleted' => { 'Key' => object_name } }
response.body['DeleteResult'] << deleted_entry
end
else
response.status = 404
raise(Excon::Errors.status_error({:expects => 200}, response))
end
response
end
end
end
end
end

View file

@ -94,7 +94,6 @@ Shindo.tests('AWS::Storage | object requests', ['aws']) do
{ 'Deleted' => { 'Key' => 'fog_object' } }
]
}) do
pending if Fog.mocking?
Fog::Storage[:aws].delete_multiple_objects(@directory.identity, ['fog_object'])
Fog::Storage[:aws].delete_multiple_objects(@directory.identity, ['fog_object']).body
end
@ -140,7 +139,6 @@ Shindo.tests('AWS::Storage | object requests', ['aws']) do
end
tests("#delete_multiple_objects('fognonbucket', ['fog_non_object'])").raises(Excon::Errors::NotFound) do
pending if Fog.mocking?
Fog::Storage[:aws].delete_multiple_objects('fognonbucket', ['fog_non_object'])
end