mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
30e28d704f
vCloud version API 1.5 requires us to adapt certain calls. This patch does all the necessary things to scan a vCloud 1.5 completely and read all the necessary attributes, as we could already before. Furthermore, it add tests for the version 1.5 calls. The API version can now be set as a version param to the vcloud compute resource. By default it chooses version 1.5. This has been tested against a vCloud 1.5 and 1.0.
60 lines
2.2 KiB
Ruby
60 lines
2.2 KiB
Ruby
require 'fog/vcloud/models/compute/networks'
|
|
|
|
Shindo.tests("Vcloud::Compute | networks", ['vcloud']) do
|
|
|
|
Fog::Vcloud::Compute::SUPPORTED_VERSIONS.each do |version|
|
|
tests("api version #{version}") do
|
|
|
|
tests("from an org perspective") do
|
|
instance = Fog::Vcloud::Compute::Networks.new(
|
|
:connection => Fog::Vcloud::Compute.new(
|
|
:vcloud_host => 'vcloud.example.com',
|
|
:vcloud_username => 'username',
|
|
:vcloud_password => 'password',
|
|
:vcloud_version => version
|
|
),
|
|
:href => "https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/org/1"
|
|
)
|
|
|
|
tests("collection") do
|
|
returns(2) { instance.size }
|
|
returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.first.href }
|
|
end
|
|
end
|
|
|
|
tests("from a vdc perspective") do
|
|
instance = Fog::Vcloud::Compute::Networks.new(
|
|
:connection => Fog::Vcloud::Compute.new(
|
|
:vcloud_host => 'vcloud.example.com',
|
|
:vcloud_username => 'username',
|
|
:vcloud_password => 'password',
|
|
:vcloud_version => version
|
|
),
|
|
:href => "https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/vdc/1"
|
|
)
|
|
|
|
tests("collection") do
|
|
returns(2) { instance.size }
|
|
returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.first.href }
|
|
end
|
|
end
|
|
|
|
tests("from a vapp perspective") do
|
|
instance = Fog::Vcloud::Compute::Networks.new(
|
|
:connection => Fog::Vcloud::Compute.new(
|
|
:vcloud_host => 'vcloud.example.com',
|
|
:vcloud_username => 'username',
|
|
:vcloud_password => 'password',
|
|
:vcloud_version => version
|
|
),
|
|
:href => "https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/vApp/vapp-1"
|
|
)
|
|
|
|
tests("collection") do
|
|
returns(1) { instance.size }
|
|
returns("https://vcloud.example.com/api#{version == '1.0' ? '/v1.0' : ''}/network/1") { instance.first.href }
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|