Sha256: 73e654ac1eeb0df7e4435544d6312ef8d164de9d7d1b6d556479a24ac330da1e

Contents?: true

Size: 1 KB

Versions: 2

Compression:

Stored size: 1 KB

Contents

require 'spec_helper'

describe Vcloud::Fog::ModelInterface do

  it "should retrive logged in organization" do
    vm_href, vdc_href = 'https://vmware.net/vapp/vm-1', 'vdc/vdc-1'
    vm = double(:vm, :href => vm_href)
    vdc = double(:vdc1,
                 :id => 'vdc-1',
                 :href => vdc_href,
                 :vapps => double(:vapps, :get_by_name => double(:vapp, :name => 'vapp-1', :vms => [vm])))
    org = double(:hr, :name => 'HR ORG', :vdcs => [vdc])

    vcloud = double(:mock_vcloud, :org_name => 'HR', :organizations => double(:orgs, :get_by_name => org))
    expect(vcloud).to receive(:get_vms_in_lease_from_query).with({:filter => "href==#{vm_href}"}).and_return(
        double(
            :vm_query_record,
            :body => {:VMRecord => [{:href => vm_href, :containerName => 'vapp-1', :vdc => vdc_href}]}
        )
    )
    expect(Fog::Compute::VcloudDirector).to receive(:new).and_return(vcloud)

    expect(Vcloud::Fog::ModelInterface.new.get_vm_by_href(vm_href)).to eq(vm)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vcloud-core-0.7.0 spec/vcloud/fog/fog_model_interface_spec.rb
vcloud-core-0.6.0 spec/vcloud/fog/fog_model_interface_spec.rb