diff --git a/lib/fog/aws/models/ec2/address.rb b/lib/fog/aws/models/ec2/address.rb index 64a3334a4..1472cd1c5 100644 --- a/lib/fog/aws/models/ec2/address.rb +++ b/lib/fog/aws/models/ec2/address.rb @@ -8,13 +8,6 @@ module Fog attribute :instance_id, 'instanceId' - def initialize(new_attributes = {}) - new_attributes = { - :instance_id => '' - }.merge!(new_attributes) - super(new_attributes) - end - def destroy connection.release_address(@public_ip) true diff --git a/lib/fog/aws/models/ec2/addresses.rb b/lib/fog/aws/models/ec2/addresses.rb index 565b04702..c2cdbf39b 100644 --- a/lib/fog/aws/models/ec2/addresses.rb +++ b/lib/fog/aws/models/ec2/addresses.rb @@ -27,10 +27,7 @@ module Fog :public_ip => public_ip }.merge!(attributes)) data['addressesSet'].each do |address| - addresses << Fog::AWS::EC2::Address.new({ - :collection => addresses, - :connection => connection - }.merge!(address)) + addresses << new(address.reject {|key, value| value.nil? || value.empty? }) end if instance addresses = addresses.select {|address| address.instance_id == instance.id} diff --git a/lib/fog/rackspace/requests/servers/list_flavors_detail.rb b/lib/fog/rackspace/requests/servers/list_flavors_detail.rb index a021b8f7a..ace64f300 100644 --- a/lib/fog/rackspace/requests/servers/list_flavors_detail.rb +++ b/lib/fog/rackspace/requests/servers/list_flavors_detail.rb @@ -17,7 +17,7 @@ unless Fog.mocking? request( :expects => 200, :method => 'GET', - :path => 'flavors.json' + :path => 'flavors/detail.json' ) end diff --git a/lib/fog/rackspace/requests/servers/reboot_server.rb b/lib/fog/rackspace/requests/servers/reboot_server.rb index a18818b2a..0b5018de4 100644 --- a/lib/fog/rackspace/requests/servers/reboot_server.rb +++ b/lib/fog/rackspace/requests/servers/reboot_server.rb @@ -11,14 +11,11 @@ unless Fog.mocking? # * type<~String> - Type of reboot, must be in ['HARD', 'SOFT'] # def reboot_server(server_id, type) - data = { - 'reboot' => { 'type' => type } - } request( - :body => data.to_json, + :body => { 'reboot' => { 'type' => type }}.to_json, :expects => 202, :method => 'POST', - :path => "servers/#{id}" + :path => "servers/#{server_id}/action.json" ) end @@ -32,7 +29,7 @@ else module Rackspace class Servers - def update_server + def reboot_server(server_id, type) end end diff --git a/lib/fog/rackspace/requests/servers/update_server.rb b/lib/fog/rackspace/requests/servers/update_server.rb index 156e88d97..ef47b29f4 100644 --- a/lib/fog/rackspace/requests/servers/update_server.rb +++ b/lib/fog/rackspace/requests/servers/update_server.rb @@ -13,10 +13,10 @@ unless Fog.mocking? # * name<~String> - New name for server def update_server(server_id, options = {}) request( - :body => options.to_json, + :body => { 'server' => options }.to_json, :expects => 204, :method => 'PUT', - :path => "servers/#{id}" + :path => "servers/#{server_id}.json" ) end diff --git a/spec/aws/models/ec2/instance_spec.rb b/spec/aws/models/ec2/instance_spec.rb index 4078fb84e..09ec1a517 100644 --- a/spec/aws/models/ec2/instance_spec.rb +++ b/spec/aws/models/ec2/instance_spec.rb @@ -127,7 +127,7 @@ describe 'Fog::AWS::EC2::Instance' do describe "#save" do before(:each) do - @instance = ec2.instances.new + @instance = ec2.instances.new(:image_id => GENTOO_AMI) end it "should return true when it succeeds" do diff --git a/spec/aws/models/ec2/snapshots_spec.rb b/spec/aws/models/ec2/snapshots_spec.rb index 5ed0ca64b..843eaac86 100644 --- a/spec/aws/models/ec2/snapshots_spec.rb +++ b/spec/aws/models/ec2/snapshots_spec.rb @@ -56,7 +56,7 @@ describe 'Fog::AWS::EC2::Snapshots' do volume = ec2.volumes.create(:availability_zone => 'us-east-1a', :size => 1, :device => 'dev/sdz1') snapshot = volume.snapshots.create get = ec2.snapshots.get(snapshot.snapshot_id) - snapshot.attributes.should == get.attributes + snapshot.attributes.reject {|key, value| ['progress', 'status'].include?(key)}.should == get.attributes.reject {|key, value| ['progress', 'status'].include?(key)} snapshot.destroy end diff --git a/spec/aws/models/ec2/volume_spec.rb b/spec/aws/models/ec2/volume_spec.rb index 2f1e24d0c..17767f96b 100644 --- a/spec/aws/models/ec2/volume_spec.rb +++ b/spec/aws/models/ec2/volume_spec.rb @@ -60,6 +60,7 @@ describe 'Fog::AWS::EC2::Volume' do after(:each) do @instance.destroy if @volume.volume_id + @volume.instance = nil @volume.destroy end end diff --git a/spec/rackspace/requests/files/get_container_spec.rb b/spec/rackspace/requests/files/get_container_spec.rb index 459b28bc7..603f5e18c 100644 --- a/spec/rackspace/requests/files/get_container_spec.rb +++ b/spec/rackspace/requests/files/get_container_spec.rb @@ -25,10 +25,8 @@ describe 'Rackspace::Files.get_container' do end describe 'failure' do - it "should raise a NotFound error if the container does not exist" do - lambda do - files.get_container('container_name') - end.should raise_error(Excon::Errors::NotFound) + it "should not raise an if the container does not exist" do + files.get_container('container_name') end end diff --git a/spec/rackspace/requests/servers/create_server_spec.rb b/spec/rackspace/requests/servers/create_server_spec.rb index 78d59d622..3411119c0 100644 --- a/spec/rackspace/requests/servers/create_server_spec.rb +++ b/spec/rackspace/requests/servers/create_server_spec.rb @@ -25,7 +25,7 @@ describe 'Rackspace::Servers.create_server' do actual['imageId'].should be_an(Integer) actual['metadata'].should be_a(Hash) actual['name'].should be_a(String) - actual['progress'].should be_an(Integer) + # actual['progress'].should be_an(Integer) actual['status'].should be_a(String) end diff --git a/spec/rackspace/requests/servers/delete_server_spec.rb b/spec/rackspace/requests/servers/delete_server_spec.rb index 45359e9c1..93534e13b 100644 --- a/spec/rackspace/requests/servers/delete_server_spec.rb +++ b/spec/rackspace/requests/servers/delete_server_spec.rb @@ -9,7 +9,7 @@ describe 'Rackspace::Servers.delete_server' do end it "should return proper attributes" do - eventually do + eventually(128) do servers.delete_server(@server_id) end end diff --git a/spec/rackspace/requests/servers/list_images_detail_spec.rb b/spec/rackspace/requests/servers/list_images_detail_spec.rb index a397dc144..d6bb8ea52 100644 --- a/spec/rackspace/requests/servers/list_images_detail_spec.rb +++ b/spec/rackspace/requests/servers/list_images_detail_spec.rb @@ -4,7 +4,7 @@ describe 'Rackspace::Servers.list_images_detail' do describe 'success' do it "should return proper attributes" do - actual = servers.list_images_details + actual = servers.list_images_detail.body actual['images'].should be_an(Array) image = actual['images'].first image['created'].should be_a(String) diff --git a/spec/rackspace/requests/servers/update_server_spec.rb b/spec/rackspace/requests/servers/update_server_spec.rb index 87492bdda..cdd28a1e4 100644 --- a/spec/rackspace/requests/servers/update_server_spec.rb +++ b/spec/rackspace/requests/servers/update_server_spec.rb @@ -15,7 +15,9 @@ describe 'Rackspace::Servers.update_server' do end it "should return proper attributes" do - servers.update_server(@server_id, :name => 'server_name', :adminPass => 'admin_password') + eventually(128) do + servers.update_server(@server_id, :name => 'server_name', :adminPass => 'admin_password') + end end end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index a5de7df15..1f8e3cd53 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -3,7 +3,7 @@ require 'open-uri' current_directory = File.dirname(__FILE__) require "#{current_directory}/../lib/fog" -Fog.mock! +# Fog.mock! def credentials @credentials ||= begin