Class: Fog::Compute::Hyperv::Mock
- Inherits:
-
Shared
- Object
- Shared
- Fog::Compute::Hyperv::Mock
show all
- Defined in:
- lib/fog/hyperv/compute.rb,
lib/fog/hyperv/requests/compute/get_vm.rb,
lib/fog/hyperv/requests/compute/get_vhd.rb,
lib/fog/hyperv/requests/compute/get_vm_bios.rb,
lib/fog/hyperv/requests/compute/get_vm_group.rb,
lib/fog/hyperv/requests/compute/get_vm_firmware.rb,
lib/fog/hyperv/requests/compute/get_cluster_node.rb,
lib/fog/hyperv/requests/compute/get_vm_dvd_drive.rb,
lib/fog/hyperv/requests/compute/get_vm_host_cluster.rb,
lib/fog/hyperv/requests/compute/get_vm_hard_disk_drive.rb,
lib/fog/hyperv/requests/compute/get_vm_network_adapter.rb,
lib/fog/hyperv/requests/compute/get_vm_floppy_disk_drive.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Shared
#version
Constructor Details
#initialize(_options = {}) ⇒ Mock
Returns a new instance of Mock.
383
384
385
|
# File 'lib/fog/hyperv/compute.rb', line 383
def initialize(_options = {})
require 'fog/json'
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args) ⇒ Object
387
388
389
390
391
392
393
|
# File 'lib/fog/hyperv/compute.rb', line 387
def method_missing(method, *args)
if requests.find { |_, k| k == method }
handle_mock_response((args.first || {}).merge(_method: method))
else
super
end
end
|
Class Method Details
.method_defined?(method) ⇒ Boolean
399
400
401
|
# File 'lib/fog/hyperv/compute.rb', line 399
def self.method_defined?(method)
Fog::Compute::Hyperv.requests.find { |_, k| k == method } || super
end
|
Instance Method Details
#get_cluster_node(args = {}) ⇒ Object
11
12
13
14
15
|
# File 'lib/fog/hyperv/requests/compute/get_cluster_node.rb', line 11
def get_cluster_node(args = {})
data = handle_mock_response args
data = data.find { |n| n[:name] == args[:name] } if args[:name]
data
end
|
#get_vhd(args = {}) ⇒ Object
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/fog/hyperv/requests/compute/get_vhd.rb', line 12
def get_vhd(args = {})
requires_one args, :vm_id, :path, :disk_number
data = handle_mock_response args
if args[:vm_id]
data = case args[:vm_id].downcase
when '20ff7fe3-fd54-425c-aa97-fbf3c2e7a868'
data[1..-1]
when '416e49fd-28dd-413c-9743-aa3e69e4807d'
data[0]
end
elsif args[:path]
data = data.find { |d| d[:path].casecmp(args[:path]).zero? }
elsif args[:disk_number]
Fog::Mock.not_implemented
end
data
end
|
#get_vm(args = {}) ⇒ Object
11
12
13
14
15
16
|
# File 'lib/fog/hyperv/requests/compute/get_vm.rb', line 11
def get_vm(args = {})
data = handle_mock_response args
data = data.find { |v| v[:name].casecmp(args[:name]).zero? } if args[:name]
data = data.find { |v| v[:id].casecmp(args[:id]).zero? } if args[:id]
data
end
|
#get_vm_bios(args = {}) ⇒ Object
12
13
14
15
16
|
# File 'lib/fog/hyperv/requests/compute/get_vm_bios.rb', line 12
def get_vm_bios(args = {})
requires args, :vm_name
handle_mock_response(args).find { |b| b[:vm_name].casecmp(args[:vm_name]).zero? }
end
|
#get_vm_dvd_drive(options = {}) ⇒ Object
12
13
14
15
16
|
# File 'lib/fog/hyperv/requests/compute/get_vm_dvd_drive.rb', line 12
def get_vm_dvd_drive(options = {})
requires options, :vm_name
handle_mock_response(args).find { |b| b[:vm_name].casecmp(args[:vm_name]).zero? }
end
|
#get_vm_firmware(args = {}) ⇒ Object
12
13
14
|
# File 'lib/fog/hyperv/requests/compute/get_vm_firmware.rb', line 12
def get_vm_firmware(args = {})
handle_mock_response(args).find { |b| b[:vm_name].casecmp(args[:vm_name]).zero? }
end
|
#get_vm_floppy_disk_drive(options = {}) ⇒ Object
12
13
14
15
16
|
# File 'lib/fog/hyperv/requests/compute/get_vm_floppy_disk_drive.rb', line 12
def get_vm_floppy_disk_drive(options = {})
requires options, :vm_name
handle_mock_response(args).find { |b| b[:vm_name].casecmp(args[:vm_name]).zero? }
end
|
#get_vm_group(options = {}) ⇒ Object
13
14
15
16
17
18
|
# File 'lib/fog/hyperv/requests/compute/get_vm_group.rb', line 13
def get_vm_group(options = {})
requires_version '10.0'
Fog::Mock.not_implemented
end
|
#get_vm_hard_disk_drive(args = {}) ⇒ Object
12
13
14
15
16
|
# File 'lib/fog/hyperv/requests/compute/get_vm_hard_disk_drive.rb', line 12
def get_vm_hard_disk_drive(args = {})
requires args, :vm_name
handle_mock_response(args).find { |b| b[:vm_name].casecmp(args[:vm_name]).zero? }
end
|
#get_vm_host_cluster(options = {}) ⇒ Object
14
15
16
17
18
19
20
|
# File 'lib/fog/hyperv/requests/compute/get_vm_host_cluster.rb', line 14
def get_vm_host_cluster(options = {})
requires_version '10.0'
requires options, :cluster_name
Fog::Mock.not_implemented
end
|
#get_vm_network_adapter(args = {}) ⇒ Object
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/fog/hyperv/requests/compute/get_vm_network_adapter.rb', line 12
def get_vm_network_adapter(args = {})
requires_one args, :vm_name, :all, :management_os
data = handle_mock_response(args)
if args[:all]
data
elsif args[:vm_name]
data.find { |i| i[:vm_name].casecmp(args[:vm_name]).zero? }
elsif args[:management_os]
data.find { |i| i[:is_management_os] }
end
end
|
#respond_to_missing?(method, include_private = false) ⇒ Boolean
395
396
397
|
# File 'lib/fog/hyperv/compute.rb', line 395
def respond_to_missing?(method, include_private = false)
requests.find { |_, k| k == method } || super
end
|