1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/tests/fogdocker/models/compute/server_tests.rb

47 lines
1.6 KiB
Ruby
Raw Normal View History

2014-02-15 18:06:49 -05:00
Shindo.tests('Fog::Compute[:fogdocker] | server model', ['fogdocker']) do
compute = Fog::Compute[:fogdocker]
server = compute.servers.create(:name => "fog-#{Time.now.to_i}", 'image' => 'mattdm/fedora:f19','Cmd' => ['date'])
tests('The server model should') do
tests('have the action') do
test('reload') { server.respond_to? 'reload' }
%w{ start restart stop destroy }.each do |action|
test(action) { server.respond_to? action }
end
%w{ start restart stop destroy}.each do |action|
test("#{action} returns successfully") {
server.send(action.to_sym) ? true : false
}
end
end
tests('have attributes') do
model_attribute_hash = server.attributes
attributes = [ :id,
:name,
:created,
:network_settings_ipaddress,
:state_running,
:config_cpu_shares,
:config_memory,
:config_hostname,
2014-02-15 18:06:49 -05:00
:image,
#:config => exposed_ports,
#:config => volumes
]
tests("The server model should respond to") do
attributes.each do |attribute|
test("#{attribute}") { server.respond_to? attribute }
end
end
tests("The attributes hash should have key") do
attributes.each do |attribute|
test("#{attribute}") { model_attribute_hash.has_key? attribute }
end
end
end
test('be a kind of Fog::Compute::Fogdocker::Server') { server.kind_of? Fog::Compute::Fogdocker::Server }
end
end