[opennebula] Added several mocks for fit live testing
This commit is contained in:
parent
7d27c6ab8b
commit
9cf6870ae6
|
@ -19,11 +19,7 @@ module Fog
|
|||
collection :interfaces
|
||||
model :group
|
||||
collection :groups
|
||||
# model :pool
|
||||
# collection :pools
|
||||
# model :node
|
||||
# collection :nodes
|
||||
#
|
||||
|
||||
request_path 'fog/opennebula/requests/compute'
|
||||
request :list_vms
|
||||
request :list_groups
|
||||
|
@ -34,30 +30,22 @@ module Fog
|
|||
request :vm_resume
|
||||
request :vm_stop
|
||||
request :template_pool
|
||||
#request :define_domain
|
||||
# request :vm_action
|
||||
# request :list_pools
|
||||
# request :list_pool_volumes
|
||||
# request :define_pool
|
||||
# request :pool_action
|
||||
# request :list_volumes
|
||||
# request :volume_action
|
||||
# request :create_volume
|
||||
# request :destroy_network
|
||||
# request :list_interfaces
|
||||
# request :destroy_interface
|
||||
# request :get_node_info
|
||||
# request :update_display
|
||||
|
||||
class Mock
|
||||
include Collections
|
||||
def initialize(options={})
|
||||
end
|
||||
|
||||
def client
|
||||
return @client
|
||||
end
|
||||
end
|
||||
|
||||
class Real
|
||||
include Collections
|
||||
|
||||
def client
|
||||
return @client if defined?(@client)
|
||||
return @client
|
||||
end
|
||||
|
||||
def initialize(options={})
|
||||
|
|
|
@ -41,7 +41,7 @@ module Fog
|
|||
end
|
||||
|
||||
class Mock
|
||||
def list_networks(filters={ })
|
||||
def list_networks(filters={})
|
||||
net1 = mock_network 'net1'
|
||||
net2 = mock_network 'net2'
|
||||
[net1, net2]
|
||||
|
@ -49,9 +49,12 @@ module Fog
|
|||
|
||||
def mock_network name
|
||||
{
|
||||
:uuid => 'net.uuid',
|
||||
:name => name,
|
||||
:bridge_name => 'net.bridge_name'
|
||||
:id => "5",
|
||||
:name => name,
|
||||
:uid => "5",
|
||||
:gid => "5",
|
||||
:description => "netDescription",
|
||||
:vlan => "5"
|
||||
}
|
||||
end
|
||||
end
|
||||
|
|
|
@ -52,15 +52,36 @@ module Fog
|
|||
end
|
||||
|
||||
class Mock
|
||||
def list_vms(filter = { })
|
||||
dom1 = mock_domain 'fog-dom1'
|
||||
dom2 = mock_domain 'fog-dom2'
|
||||
dom3 = mock_domain 'a-fog-dom3'
|
||||
[dom1, dom2, dom3]
|
||||
def list_vms(filter = {})
|
||||
if filter[:id].nil?
|
||||
vm1 = mock_vm 'fog-vm1'
|
||||
vm2 = mock_vm 'fog-vm2'
|
||||
vm3 = mock_vm 'fog-vm3'
|
||||
return [vm1, vm2, vm3]
|
||||
elsif filter[:mock_return]
|
||||
mock_vm 'fog-vm1', filter[:id]
|
||||
else
|
||||
[]
|
||||
end
|
||||
end
|
||||
def mock_vm(name, id=4)
|
||||
data = {}
|
||||
data["onevm_object"] = ""
|
||||
data["status"] = "Running"
|
||||
data["state"] = "3"
|
||||
data["id"] = id
|
||||
data["uuid"] = "5"
|
||||
data["gid"] = "5"
|
||||
data["name"] = "MockVM-#{name}"
|
||||
data["user"] = "MockUser"
|
||||
data["group"] = "MockGroup"
|
||||
data["cpu"] = "2"
|
||||
data["memory"] = "1024"
|
||||
data["mac"] = "00:01:02:03:04:05"
|
||||
data["ip"] = "1.1.1.1"
|
||||
data
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -70,6 +70,9 @@ module Fog
|
|||
end #class Real
|
||||
|
||||
class Mock
|
||||
def template_pool(filter = { })
|
||||
[ {}, {} ]
|
||||
end
|
||||
end #class Mock
|
||||
end #class OpenNebula
|
||||
end #module Compute
|
||||
|
|
|
@ -67,6 +67,23 @@ module Fog
|
|||
end
|
||||
|
||||
class Mock
|
||||
def vm_allocate(attr={ })
|
||||
data = {}
|
||||
data["onevm_object"] = ""
|
||||
data["status"] = "Running"
|
||||
data["state"] = "3"
|
||||
data["id"] = 4
|
||||
data["uuid"] = "5"
|
||||
data["gid"] = "5"
|
||||
data["name"] = "MockVM"
|
||||
data["user"] = "MockUser"
|
||||
data["group"] = "MockGroup"
|
||||
data["cpu"] = "2"
|
||||
data["memory"] = "1024"
|
||||
data["mac"] = "00:01:02:03:04:05"
|
||||
data["ip"] = "1.1.1.1"
|
||||
data
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -2,7 +2,6 @@ module Fog
|
|||
module Compute
|
||||
class OpenNebula
|
||||
class Real
|
||||
|
||||
def vm_destroy(id)
|
||||
vmpool = ::OpenNebula::VirtualMachinePool.new(client)
|
||||
vmpool.info!(-2,id,id,-1)
|
||||
|
@ -12,8 +11,10 @@ module Fog
|
|||
vm.delete(false)
|
||||
end
|
||||
end
|
||||
|
||||
class Mock
|
||||
end
|
||||
class Mock
|
||||
def vm_destroy(id)
|
||||
true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -12,7 +12,7 @@ Shindo.tests("Fog::Compute[:opennebula] | vm_create and destroy request", 'openn
|
|||
end
|
||||
tests("Destroy VM") do
|
||||
compute.vm_destroy(response['id'])
|
||||
vms = compute.list_vms({:id => response['id']})
|
||||
vms = compute.list_vms({:id => response['id'], :mock_return => false})
|
||||
test("get vm should be empty") { compute.list_vms({:id => response['id']}).empty?}
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue