Sha256: d9f40189f158c4c7858bdf41525ad5f95d20e12dabf426b4e9afb0e79864a722

Contents?: true

Size: 1.16 KB

Versions: 1

Compression:

Stored size: 1.16 KB

Contents

require File.expand_path '../../test_helper', __dir__

# Test class for List Virtual Machines Request
class TestListVirtualMachines < Minitest::Test
  def setup
    @service = Fog::Compute::AzureRM.new(credentials)
    client = @service.instance_variable_get(:@compute_mgmt_client)
    @virtual_machines = client.virtual_machines
    @promise = Concurrent::Promise.execute do
    end
  end

  def test_list_virtual_machines_success
    response = ApiStub::Requests::Compute::VirtualMachine.list_virtual_machines_response
    @promise.stub :value!, response do
      @virtual_machines.stub :list, @promise do
        assert_equal @service.list_virtual_machines('fog-test-rg'), Azure::ARM::Compute::Models::VirtualMachineListResult.serialize_object(response.body)['value']
      end
    end
  end

  def test_list_virtual_machines_failure
    response = -> { fail MsRestAzure::AzureOperationError.new(nil, nil, 'error' => { 'message' => 'mocked exception' }) }
    @promise.stub :value!, response do
      @virtual_machines.stub :list, @promise do
        assert_raises(RuntimeError) { @service.list_virtual_machines('fog-test-rg') }
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fog-azure-rm-0.0.4 test/requests/compute/test_list_virtual_machines.rb