mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
[rackspace|networks] Add mock responses.
This commit is contained in:
parent
cc4bc3cb65
commit
e91a410cc6
5 changed files with 143 additions and 97 deletions
|
@ -4,111 +4,117 @@ module Fog
|
|||
def data
|
||||
@@data ||= Hash.new do |hash, key|
|
||||
hash[key] = begin
|
||||
#Compute V2
|
||||
flavor_id = Fog.credentials[:rackspace_flavor_id].to_s ||= Fog::Mock.random_numbers(1)
|
||||
image_id = Fog.credentials[:rackspace_image_id] ||= Fog::Rackspace::MockData.uuid
|
||||
image_name = Fog::Mock.random_letters(6)
|
||||
network_id = Fog::Rackspace::MockData.uuid
|
||||
|
||||
#Compute V2
|
||||
flavor_id = Fog.credentials[:rackspace_flavor_id].to_s ||= Fog::Mock.random_numbers(1)
|
||||
image_id = Fog.credentials[:rackspace_image_id] ||= Fog::Rackspace::MockData.uuid
|
||||
image_name = Fog::Mock.random_letters(6)
|
||||
flavor = {
|
||||
"OS-FLV-DISABLED:disabled" => false,
|
||||
"disk" => 20,
|
||||
"id" => flavor_id,
|
||||
"links" => [
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/v2/010101/flavors/#{flavor_id}",
|
||||
"rel" => "self"
|
||||
},
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/010101/flavors/#{flavor_id}",
|
||||
"rel" => "bookmark"
|
||||
}
|
||||
],
|
||||
"name" => "512MB Standard Instance",
|
||||
"ram" => 512,
|
||||
"rxtx_factor" => 2.0,
|
||||
"swap" => 512,
|
||||
"vcpus" => 1,
|
||||
}
|
||||
|
||||
flavor = {
|
||||
"OS-FLV-DISABLED:disabled" => false,
|
||||
"disk" => 20,
|
||||
"id" => flavor_id,
|
||||
"links" => [
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/v2/010101/flavors/#{flavor_id}",
|
||||
"rel" => "self"
|
||||
},
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/010101/flavors/#{flavor_id}",
|
||||
"rel" => "bookmark"
|
||||
}
|
||||
],
|
||||
"name" => "512MB Standard Instance",
|
||||
"ram" => 512,
|
||||
"rxtx_factor" => 2.0,
|
||||
"swap" => 512,
|
||||
"vcpus" => 1,
|
||||
}
|
||||
image = {
|
||||
"OS-DCF:diskConfig" => "AUTO",
|
||||
"created" => "2012-02-28T19:38:57Z",
|
||||
"id" => image_id,
|
||||
"links" => [
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/v2/010101/images/#{image_id}",
|
||||
"rel" => "self"
|
||||
},
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/010101/images/#{image_id}",
|
||||
"rel" => "bookmark"
|
||||
},
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/010101/images/#{image_id}",
|
||||
"rel" => "alternate",
|
||||
"type" => "application/vnd.openstack.image"
|
||||
}
|
||||
],
|
||||
"metadata" => {
|
||||
"arch" => "x86-64",
|
||||
"auto_disk_config" => "True",
|
||||
"com.rackspace__1__build_core" => "1",
|
||||
"com.rackspace__1__build_managed" => "0",
|
||||
"com.rackspace__1__build_rackconnect" => "0",
|
||||
"com.rackspace__1__options" => "0",
|
||||
"com.rackspace__1__visible_core" => "1",
|
||||
"com.rackspace__1__visible_managed" => "0",
|
||||
"com.rackspace__1__visible_rackconnect" => "0",
|
||||
"image_type" => "base",
|
||||
"org.openstack__1__architecture" => "x64",
|
||||
"org.openstack__1__os_distro" => "org.ubuntu",
|
||||
"org.openstack__1__os_version" => "11.10",
|
||||
"os_distro" => "ubuntu",
|
||||
"os_type" => "linux",
|
||||
"os_version" => "11.10",
|
||||
"rax_managed" => "false",
|
||||
"rax_options" => "0"
|
||||
},
|
||||
"minDisk" => 10,
|
||||
"minRam" => 256,
|
||||
"name" => image_name,
|
||||
"progress" => 100,
|
||||
"status" => "ACTIVE",
|
||||
"updated" => "2012-02-28T19:39:05Z"
|
||||
}
|
||||
|
||||
image = {
|
||||
"OS-DCF:diskConfig" => "AUTO",
|
||||
"created" => "2012-02-28T19:38:57Z",
|
||||
"id" => image_id,
|
||||
"links" => [
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/v2/010101/images/#{image_id}",
|
||||
"rel" => "self"
|
||||
},
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/010101/images/#{image_id}",
|
||||
"rel" => "bookmark"
|
||||
},
|
||||
{
|
||||
"href" => "https://dfw.servers.api.rackspacecloud.com/010101/images/#{image_id}",
|
||||
"rel" => "alternate",
|
||||
"type" => "application/vnd.openstack.image"
|
||||
}
|
||||
],
|
||||
"metadata" => {
|
||||
"arch" => "x86-64",
|
||||
"auto_disk_config" => "True",
|
||||
"com.rackspace__1__build_core" => "1",
|
||||
"com.rackspace__1__build_managed" => "0",
|
||||
"com.rackspace__1__build_rackconnect" => "0",
|
||||
"com.rackspace__1__options" => "0",
|
||||
"com.rackspace__1__visible_core" => "1",
|
||||
"com.rackspace__1__visible_managed" => "0",
|
||||
"com.rackspace__1__visible_rackconnect" => "0",
|
||||
"image_type" => "base",
|
||||
"org.openstack__1__architecture" => "x64",
|
||||
"org.openstack__1__os_distro" => "org.ubuntu",
|
||||
"org.openstack__1__os_version" => "11.10",
|
||||
"os_distro" => "ubuntu",
|
||||
"os_type" => "linux",
|
||||
"os_version" => "11.10",
|
||||
"rax_managed" => "false",
|
||||
"rax_options" => "0"
|
||||
},
|
||||
"minDisk" => 10,
|
||||
"minRam" => 256,
|
||||
"name" => image_name,
|
||||
"progress" => 100,
|
||||
"status" => "ACTIVE",
|
||||
"updated" => "2012-02-28T19:39:05Z"
|
||||
}
|
||||
network = {
|
||||
'id' => network_id,
|
||||
'label' => 'network label',
|
||||
'cidr' => '192.168.0.0/24'
|
||||
}
|
||||
|
||||
#Block Storage
|
||||
volume_type1_id = Fog::Mock.random_numbers(3).to_i
|
||||
volume_type2_id = Fog::Mock.random_numbers(3).to_i
|
||||
|
||||
#Block Storage
|
||||
volume_type1_id = Fog::Mock.random_numbers(3).to_i
|
||||
volume_type2_id = Fog::Mock.random_numbers(3).to_i
|
||||
volume_type1 = {
|
||||
"id" => volume_type1_id,
|
||||
"name" => "SATA",
|
||||
"extra_specs" => {},
|
||||
}
|
||||
|
||||
volume_type1 = {
|
||||
"id" => volume_type1_id,
|
||||
"name" => "SATA",
|
||||
"extra_specs" => {},
|
||||
}
|
||||
volume_type2 = {
|
||||
"id" => volume_type2_id,
|
||||
"name" => "SSD",
|
||||
"extra_specs" => {},
|
||||
}
|
||||
|
||||
volume_type2 = {
|
||||
"id" => volume_type2_id,
|
||||
"name" => "SSD",
|
||||
"extra_specs" => {},
|
||||
}
|
||||
#Mock Data Hash
|
||||
{
|
||||
#Compute V2
|
||||
:flavors => {flavor_id => flavor},
|
||||
:images => {image_id => image},
|
||||
:servers => {},
|
||||
:networks => { network_id => network },
|
||||
|
||||
#Mock Data Hash
|
||||
{
|
||||
#Compute V2
|
||||
:flavors => {flavor_id => flavor},
|
||||
:images => {image_id => image},
|
||||
:servers => {},
|
||||
|
||||
#Block Storage
|
||||
:volumes => {},
|
||||
:snapshots => {},
|
||||
:volume_attachments => [],
|
||||
:volume_types => {volume_type1_id => volume_type1, volume_type2_id => volume_type2},
|
||||
}
|
||||
end
|
||||
#Block Storage
|
||||
:volumes => {},
|
||||
:snapshots => {},
|
||||
:volume_attachments => [],
|
||||
:volume_types => {volume_type1_id => volume_type1, volume_type2_id => volume_type2},
|
||||
}
|
||||
end
|
||||
end[@rackspace_api_key]
|
||||
end
|
||||
|
||||
|
|
|
@ -18,6 +18,19 @@ module Fog
|
|||
)
|
||||
end
|
||||
end
|
||||
|
||||
class Mock
|
||||
def create_network(label, cidr)
|
||||
network_id = Fog::Rackspace::MockData.uuid
|
||||
|
||||
self.data[:networks][network_id] = {
|
||||
'id' => network_id,
|
||||
'label' => label,
|
||||
'cidr' => cidr
|
||||
}
|
||||
response(:body => { 'network' => self.data[:networks][network_id] })
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,6 +6,16 @@ module Fog
|
|||
request(:method => 'DELETE', :path => "os-networksv2/#{id}", :expects => 202)
|
||||
end
|
||||
end
|
||||
|
||||
class Mock
|
||||
def delete_network(id)
|
||||
unless self.data[:networks].has_key?(id)
|
||||
raise Fog::Compute::RackspaceV2::NotFound
|
||||
end
|
||||
|
||||
response(:body => '', :status => 202)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,6 +6,16 @@ module Fog
|
|||
request(:method => 'GET', :path => "os-networksv2/#{id}", :expects => 200)
|
||||
end
|
||||
end
|
||||
|
||||
class Mock
|
||||
def get_network(id)
|
||||
unless self.data[:networks].has_key?(id)
|
||||
raise Fog::Compute::RackspaceV2::NotFound
|
||||
end
|
||||
|
||||
response(:body => { 'network' => self.data[:networks][id] })
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,6 +6,13 @@ module Fog
|
|||
request(:method => 'GET', :path => 'os-networksv2', :expects => 200)
|
||||
end
|
||||
end
|
||||
|
||||
class Mock
|
||||
def list_networks
|
||||
networks = self.data[:networks].values
|
||||
response(:body => { 'networks' => networks })
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue