Sha256: 41af08ccc5df45cfeb77466e038f48f2df6fcdbe5cb71726c1f13f1fe19b1602

Contents?: true

Size: 1.43 KB

Versions: 7

Compression:

Stored size: 1.43 KB

Contents

require File.dirname(__FILE__) + '/../../../spec_helper'

describe 'EC2.associate_address' do
  describe 'success' do

    before(:each) do
      @instance_id = AWS[:ec2].run_instances(GENTOO_AMI, 1, 1).body['instancesSet'].first['instanceId']
      @public_ip = AWS[:ec2].allocate_address.body['publicIp']
      AWS[:ec2].servers.get(@instance_id).wait_for { ready? }
    end

    after(:each) do
      AWS[:ec2].release_address(@public_ip)
      AWS[:ec2].terminate_instances(@instance_id)
    end

    it "should return proper attributes" do
      actual = AWS[:ec2].associate_address(@instance_id, @public_ip)
      actual.body['requestId'].should be_a(String)
      [false, true].should include(actual.body['return'])
    end

  end
  describe 'failure' do

    it "should raise a BadRequest error if the instance does not exist" do
      @public_ip = AWS[:ec2].allocate_address.body['publicIp']
      lambda {
        AWS[:ec2].associate_address('i-00000000', @public_ip)
      }.should raise_error(Excon::Errors::BadRequest)
      AWS[:ec2].release_address(@public_ip)
    end

    it "should raise a BadRequest error if the address does not exist" do
      @instance_id = AWS[:ec2].run_instances(GENTOO_AMI, 1, 1).body['instancesSet'].first['instanceId']
      lambda {
        AWS[:ec2].associate_address(@instance_id, '127.0.0.1')
      }.should raise_error(Excon::Errors::BadRequest)
      AWS[:ec2].terminate_instances(@instance_id)
    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
fog-0.0.91 spec/aws/requests/ec2/associate_address_spec.rb
fog-0.0.90 spec/aws/requests/ec2/associate_address_spec.rb
fog-0.0.89 spec/aws/requests/ec2/associate_address_spec.rb
fog-0.0.88 spec/aws/requests/ec2/associate_address_spec.rb
fog-0.0.87 spec/aws/requests/ec2/associate_address_spec.rb
fog-0.0.86 spec/aws/requests/ec2/associate_address_spec.rb
fog-0.0.85 spec/aws/requests/ec2/associate_address_spec.rb