1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/tests/xenserver/models/compute/network_tests.rb
2013-03-26 17:33:39 +01:00

79 lines
2.2 KiB
Ruby

Shindo.tests('Fog::Compute[:network] | network model', ['xenserver']) do
networks = Fog::Compute[:xenserver].networks
network = networks.first
tests('The network model should') do
tests('have the action') do
%w{ reload refresh destroy save vifs pifs }.each do |action|
test(action) { network.respond_to? action }
#test("#{action} returns successfully") { server.send(action.to_sym) ? true : false }
end
end
tests('have attributes') do
model_attribute_hash = network.attributes
attributes = [
:reference,
:uuid,
:__vifs,
:tags,
:mtu,
:bridge,
:name,
:other_config,
:__pifs,
:allowed_operations,
:current_operations,
:blobs
]
tests("The network model should respond to") do
attributes.each do |attribute|
test("#{attribute}") { network.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::XenServer::Network') { network.kind_of? Fog::Compute::XenServer::Network }
end
tests("A real network should") do
tests("return valid vifs") do
test("as an array") { network.vifs.kind_of? Array }
network.vifs.each { |i|
test("and each VIF should be a Fog::Compute::XenServer::VIF") { i.kind_of? Fog::Compute::XenServer::VIF }
}
end
tests("return valid PIFs") do
networks.each do |network|
test("as an array") { network.pifs.kind_of? Array }
network.pifs.each { |i|
test("and each PIF should be a Fog::Compute::XenServer::PIF") { i.kind_of? Fog::Compute::XenServer::PIF}
}
end
end
test("be able to refresh itself") { network.refresh }
end
tests("#save") do
test 'should create a network' do
@net = networks.create :name => 'foo-net'
@net.is_a? Fog::Compute::XenServer::Network
end
end
tests("#destroy") do
test 'should destroy the network' do
@net.destroy
(networks.find { |n| n.reference == @net.reference }).nil?
end
end
end