Sha256: 69d4e3987a04a2943e4595c4a38b37e101af9ed2e3013bec0523cdaa3cec4cb3

Contents?: true

Size: 1.84 KB

Versions: 11

Compression:

Stored size: 1.84 KB

Contents

Shindo.tests("Fog::Compute[:vsphere] | vm_clone request", 'vsphere') do
  # require 'guid'
  compute = Fog::Compute[:vsphere]
  response = nil
  response_linked = nil

  template = "folder/rhel64"
  datacenter = "Solutions"
  tests("Standard Clone | The return value should") do
    response = compute.vm_clone('datacenter' => datacenter, 'template_path' => template, 'name' => 'cloning_vm', 'wait' => true)
    test("be a kind of Hash") { response.kind_of? Hash }
    %w{ vm_ref task_ref }.each do |key|
      test("have a #{key} key") { response.has_key? key }
    end
  end

  template = "folder/rhel64"
  datacenter = "Solutions"
  tests("Standard Clone setting ram and cpu | The return value should") do
    response = compute.vm_clone('datacenter' => datacenter, 'template_path' => template, 'name' => 'cloning_vm', 'memoryMB' => '8192', 'numCPUs' => '8', 'wait' => true)
    test("be a kind of Hash") { response.kind_of? Hash }
    %w{ vm_ref task_ref }.each do |key|
      test("have a #{key} key") { response.has_key? key }
    end
  end

  template = "folder/rhel64"
  datacenter = "Solutions"
  tests("Linked Clone | The return value should") do
    response = compute.vm_clone('datacenter' => datacenter, 'template_path' => template, 'name' => 'cloning_vm_linked', 'wait' => 1, 'linked_clone' => true)
    test("be a kind of Hash") { response.kind_of? Hash }
    %w{ vm_ref task_ref }.each do |key|
      test("have a #{key} key") { response.has_key? key }
    end
  end

  tests("When invalid input is presented") do
    raises(ArgumentError, 'it should raise ArgumentError') { compute.vm_clone(:foo => 1) }
    raises(Fog::Compute::Vsphere::NotFound, 'it should raise Fog::Compute::Vsphere::NotFound when the UUID is not a string') do
      pending # require 'guid'
      compute.vm_clone('instance_uuid' => Guid.from_s(template), 'name' => 'jefftestfoo')
    end
  end
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
gapinc-fog-1.12.1.2.1 tests/vsphere/requests/compute/vm_clone_tests.rb
fog-1.14.0 tests/vsphere/requests/compute/vm_clone_tests.rb
fog-1.13.0 tests/vsphere/requests/compute/vm_clone_tests.rb
gapinc-fog-1.12.1.2 tests/vsphere/requests/compute/vm_clone_tests.rb
gapinc-fog-1.12.1.1 tests/vsphere/requests/compute/vm_clone_tests.rb
gapinc-fog-1.12.1a tests/vsphere/requests/compute/vm_clone_tests.rb
gapinc-fog-1.12.1 tests/vsphere/requests/compute/vm_clone_tests.rb
fog-1.12.1 tests/vsphere/requests/compute/vm_clone_tests.rb
fog-1.12.0 tests/vsphere/requests/compute/vm_clone_tests.rb
fog-1.11.1 tests/vsphere/requests/compute/vm_clone_tests.rb
fog-1.11.0 tests/vsphere/requests/compute/vm_clone_tests.rb