2010-11-16 15:31:34 -08:00
|
|
|
def collection_tests(collection, params = {}, mocks_implemented = true)
|
2010-11-11 13:54:55 -06:00
|
|
|
|
|
|
|
tests('success') do
|
|
|
|
|
|
|
|
tests("#new(#{params.inspect})").succeeds do
|
|
|
|
pending if Fog.mocking? && !mocks_implemented
|
|
|
|
collection.new(params)
|
|
|
|
end
|
|
|
|
|
|
|
|
tests("#create(#{params.inspect})").succeeds do
|
|
|
|
pending if Fog.mocking? && !mocks_implemented
|
|
|
|
@instance = collection.create(params)
|
|
|
|
end
|
|
|
|
|
|
|
|
tests("#all").succeeds do
|
|
|
|
pending if Fog.mocking? && !mocks_implemented
|
|
|
|
collection.all
|
|
|
|
end
|
|
|
|
|
2010-11-16 13:24:43 -08:00
|
|
|
if !Fog.mocking? || mocks_implemented
|
|
|
|
@identity = @instance.identity
|
|
|
|
end
|
2010-11-11 13:54:55 -06:00
|
|
|
|
|
|
|
tests("#get(#{@identity})").succeeds do
|
|
|
|
pending if Fog.mocking? && !mocks_implemented
|
|
|
|
collection.get(@identity)
|
|
|
|
end
|
|
|
|
|
|
|
|
if block_given?
|
|
|
|
yield
|
|
|
|
end
|
|
|
|
|
|
|
|
if !Fog.mocking? || mocks_implemented
|
|
|
|
@instance.destroy
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
tests('failure') do
|
|
|
|
|
2010-11-16 13:24:43 -08:00
|
|
|
if !Fog.mocking? || mocks_implemented
|
2011-07-22 11:46:55 -05:00
|
|
|
@identity = @identity.to_s
|
|
|
|
@identity.gsub!(/[a-zA-Z]/) { Fog::Mock.random_letters(1) }
|
|
|
|
@identity.gsub!(/\d/) { Fog::Mock.random_numbers(1) }
|
|
|
|
@identity
|
2010-11-16 13:24:43 -08:00
|
|
|
end
|
2010-11-11 13:54:55 -06:00
|
|
|
|
|
|
|
tests("#get('#{@identity}')").returns(nil) do
|
|
|
|
pending if Fog.mocking? && !mocks_implemented
|
|
|
|
collection.get(@identity)
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|