2009-08-17 18:55:30 -04:00
|
|
|
require File.dirname(__FILE__) + '/../../../spec_helper'
|
2009-07-23 01:25:24 -04:00
|
|
|
|
|
|
|
describe 'EC2.disassociate_address' do
|
2009-08-19 23:32:57 -04:00
|
|
|
describe 'success' do
|
2009-07-23 01:25:24 -04:00
|
|
|
|
2009-08-19 23:32:57 -04:00
|
|
|
before(:each) do
|
|
|
|
@instance_id = ec2.run_instances('ami-5ee70037', 1, 1).body['instancesSet'].first['instanceId']
|
|
|
|
@public_ip = ec2.allocate_address.body['publicIp']
|
|
|
|
ec2.associate_address(@instance_id, @public_ip)
|
|
|
|
end
|
2009-07-23 01:25:24 -04:00
|
|
|
|
2009-08-19 23:32:57 -04:00
|
|
|
after(:each) do
|
|
|
|
ec2.release_address(@public_ip)
|
|
|
|
ec2.terminate_instances([@instance_id])
|
|
|
|
end
|
2009-07-23 01:25:24 -04:00
|
|
|
|
2009-08-19 23:32:57 -04:00
|
|
|
it "should return proper attributes" do
|
|
|
|
actual = ec2.disassociate_address(@public_ip)
|
|
|
|
actual.body['requestId'].should be_a(String)
|
|
|
|
[false, true].should include(actual.body['return'])
|
|
|
|
end
|
2009-07-23 01:25:24 -04:00
|
|
|
|
2009-08-19 23:32:57 -04:00
|
|
|
end
|
2009-08-24 23:59:19 -04:00
|
|
|
|
|
|
|
describe 'failure' do
|
|
|
|
|
|
|
|
it "should raise a BadRequest error if the address does not exist" do
|
|
|
|
lambda {
|
|
|
|
ec2.disassociate_address('127.0.0.1')
|
|
|
|
}.should raise_error(Fog::Errors::BadRequest)
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
2009-08-19 23:32:57 -04:00
|
|
|
end
|