Sha256: 57087f4066bd6758b9da47ab10474ce44830696d0c2cc295f77da69bbd3016d6

Contents?: true

Size: 1.62 KB

Versions: 69

Compression:

Stored size: 1.62 KB

Contents

Shindo.tests('Fog::Compute[:vsphere]', ['vsphere']) do

  compute = Fog::Compute[:vsphere]

  tests("| convert_vm_mob_ref_to_attr_hash") do
    # Mock the RbVmomi::VIM::ManagedObject class
    class MockManagedObject

      attr_reader :parent, :_ref

      def initialize
        @parent = @_ref = 'vm-123'
      end

      def collect! *pathSet
        { '_ref' => 'vm-123', 'name' => 'fakevm' }
      end
    end

    fake_vm_mob_ref = MockManagedObject.new

    tests("When converting an incomplete vm object") do
      test("it should return a Hash") do
        compute.send(:convert_vm_mob_ref_to_attr_hash, fake_vm_mob_ref).kind_of? Hash
      end
      tests("The converted Hash should") do
        attr_hash = compute.send(:convert_vm_mob_ref_to_attr_hash, fake_vm_mob_ref)
        test("have a name") { attr_hash['name'] == 'fakevm' }
        test("have a mo_ref") {attr_hash['mo_ref'] == 'vm-123' }
        test("have an id") { attr_hash['id'] == 'vm-123' }
        test("not have a instance_uuid") { attr_hash['instance_uuid'].nil? }
      end
    end

    tests("When passed a nil object") do
      attr_hash = compute.send :convert_vm_mob_ref_to_attr_hash, nil
      test("it should return a nil object") do
        attr_hash.nil?
      end
    end
  end

  tests("Compute attributes") do
    %w{ vsphere_is_vcenter vsphere_rev vsphere_username vsphere_server }.each do |attr|
      test("it should respond to #{attr}") { compute.respond_to? attr }
    end
  end

  tests("Compute collections") do
    %w{ servers }.each do |collection|
      test("it should respond to #{collection}") { compute.respond_to? collection }
    end
  end
end

Version data entries

69 entries across 69 versions & 8 rubygems

Version Path
fog-1.22.0 tests/vsphere/compute_tests.rb
fog-1.21.0 tests/vsphere/compute_tests.rb
fog-maestrodev-1.20.0.20140305101839 tests/vsphere/compute_tests.rb
fog-maestrodev-1.20.0.20140305101305 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20140212012611 tests/vsphere/compute_tests.rb
fog-1.20.0 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20140110004459 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20140110003812 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20140109202555 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20140107192102 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20140107142106 tests/vsphere/compute_tests.rb
fog-maestrodev-1.19.0.20131219203941 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131219193542 tests/vsphere/compute_tests.rb
fog-1.19.0 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131219033443 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131219032002 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131219030716 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131219022322 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131218202447 tests/vsphere/compute_tests.rb
fog-maestrodev-1.18.0.20131209091424 tests/vsphere/compute_tests.rb