1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/tests/helpers/model_helper.rb
Aaron Suggs c95038bdc6 [aws|rds] Refactor RDS model & collection tests
Added tests for several models & collections.
2011-06-04 08:03:25 -04:00

38 lines
802 B
Ruby

def model_tests(collection, params = {}, mocks_implemented = true)
tests('success') do
@instance = collection.new(params)
tests("#save").succeeds do
pending if Fog.mocking? && !mocks_implemented
@instance.save
end
if block_given?
yield
end
tests("#destroy").succeeds do
pending if Fog.mocking? && !mocks_implemented
@instance.destroy
end
end
tests('failure') do
end
end
# Generates a unique identifier with a random differentiator.
# Useful when rapidly re-running tests, so we don't have to wait
# serveral minutes for deleted objects to disappear from the API
# E.g. 'fog-test-1234'
def uniq_id(base_name = 'fog-test')
# random_differentiator
suffix = rand(65536).to_s(16).rjust(4, '0')
[base_name, suffix] * '-'
end