1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/tests/openstack/requests/compute/flavor_tests.rb
Dan Prince bae7186994 Sync with latest OpenStack flavors extensions.
Updates the OpenStack flavors model/request/and tests so
that they support the latest upstream flavor extensions in
Nova Folsom.

Also updated the Fog tests so they pass with both mocks and reals
(tested against OpenStack deployed on Fedora).
2012-11-27 13:50:05 -05:00

50 lines
1.6 KiB
Ruby

Shindo.tests('Fog::Compute[:openstack] | flavor requests', ['openstack']) do
@flavor_format = {
'id' => String,
'name' => String,
'disk' => Integer,
'ram' => Integer,
'links' => Array,
'swap' => Fog::Nullable::String,
'rxtx_factor' => Fog::Nullable::Float,
'OS-FLV-EXT-DATA:ephemeral' => Integer,
'os-flavor-access:is_public' => Fog::Nullable::Boolean,
'OS-FLV-DISABLED:disabled' => Fog::Nullable::Boolean,
'vcpus' => Integer
}
tests('success') do
tests('#get_flavor_details(1)').formats(@flavor_format, false) do
Fog::Compute[:openstack].get_flavor_details("1").body['flavor']
end
tests('#list_flavors').formats({'flavors' => [OpenStack::Compute::Formats::SUMMARY]}) do
Fog::Compute[:openstack].list_flavors.body
end
tests('#list_flavors_detail').formats({'flavors' => [@flavor_format]}, false) do
Fog::Compute[:openstack].list_flavors_detail.body
end
tests('#create_flavor(attributes)').formats({'flavor' => @flavor_format}) do
attributes = {:flavor_id => '100', :name => 'shindo test flavor', :disk => 10, :ram => 10, :vcpus => 10, :swap => "0", :rxtx_factor => 2.4, :ephemeral => 0, :is_public => false}
Fog::Compute[:openstack].create_flavor(attributes).body
end
tests('delete_flavor(flavor_id)').succeeds do
Fog::Compute[:openstack].delete_flavor('100')
end
end
tests('failure') do
tests('#get_flavor_details(0)').raises(Fog::Compute::OpenStack::NotFound) do
Fog::Compute[:openstack].get_flavor_details("0")
end
end
end