From 7a9039da9c3d40815997053942509fd8660c490b Mon Sep 17 00:00:00 2001 From: Wesley Beary Date: Thu, 2 Jul 2009 10:54:41 -0700 Subject: [PATCH] fix errors from writing on the train where I can't debug as well --- lib/fog/aws/ec2.rb | 9 ++++----- lib/fog/aws/ec2/parsers.rb | 6 ++++++ spec/aws/ec2/allocate_address_spec.rb | 2 +- ...{describe_addresses.rb => describe_addresses_spec.rb} | 4 ++-- spec/aws/ec2/release_address_spec.rb | 6 +++--- 5 files changed, 16 insertions(+), 11 deletions(-) rename spec/aws/ec2/{describe_addresses.rb => describe_addresses_spec.rb} (79%) diff --git a/lib/fog/aws/ec2.rb b/lib/fog/aws/ec2.rb index 76f73ae93..538924fe3 100644 --- a/lib/fog/aws/ec2.rb +++ b/lib/fog/aws/ec2.rb @@ -52,9 +52,9 @@ module Fog params["PublicIp.#{index}"] = public_ip index += 1 end - request){ + request({ 'Action' => 'DescribeAddresses' - }.merge!(params), Fog::Parsers::AWS::EC2::DescribeAddresses.new + }.merge!(params), Fog::Parsers::AWS::EC2::DescribeAddresses.new) end # Release an elastic IP address. @@ -66,17 +66,16 @@ module Fog 'Action' => 'ReleaseAddress', 'PublicIp' => public_ip }, Fog::Parsers::AWS::EC2::ReleaseAddress.new) + end private def request(params, parser) - now = Time.now.utc.strftime("%Y-%m-%dT%H:%M:%SZ") params.merge!({ 'AWSAccessKeyId' => @aws_access_key_id, - 'Expires' => now, 'SignatureMethod' => 'HmacSHA256', 'SignatureVersion' => '2', - 'Timestamp' => now, + 'Timestamp' => Time.now.utc.strftime("%Y-%m-%dT%H:%M:%SZ"), 'Version' => '2009-04-04' }) diff --git a/lib/fog/aws/ec2/parsers.rb b/lib/fog/aws/ec2/parsers.rb index 55a57698b..592968c99 100644 --- a/lib/fog/aws/ec2/parsers.rb +++ b/lib/fog/aws/ec2/parsers.rb @@ -9,6 +9,8 @@ module Fog def end_element(name) case name + when 'requestId' + @response[:request_id] = @value when 'publicIp' @response[:public_ip] = @value end @@ -32,6 +34,8 @@ module Fog @address = [] when 'publicIp' @address[:public_ip] = @value + when 'requestId' + @response[:request_id] = @value end end @@ -41,6 +45,8 @@ module Fog def end_element(name) case name + when 'requestId' + @response[:request_id] = @value when 'return' if @value == 'true' @response[:return] = true diff --git a/spec/aws/ec2/allocate_address_spec.rb b/spec/aws/ec2/allocate_address_spec.rb index db88b4651..59731c02f 100644 --- a/spec/aws/ec2/allocate_address_spec.rb +++ b/spec/aws/ec2/allocate_address_spec.rb @@ -8,9 +8,9 @@ describe 'EC2.allocate_address' do it "should return proper attributes" do actual = ec2.allocate_address + actual.body[:request_id].should be_a(String) @public_ip = actual.body[:public_ip] @public_ip.should be_a(String) - p actual end end diff --git a/spec/aws/ec2/describe_addresses.rb b/spec/aws/ec2/describe_addresses_spec.rb similarity index 79% rename from spec/aws/ec2/describe_addresses.rb rename to spec/aws/ec2/describe_addresses_spec.rb index 0678ce9ef..b9e7a807c 100644 --- a/spec/aws/ec2/describe_addresses.rb +++ b/spec/aws/ec2/describe_addresses_spec.rb @@ -3,7 +3,7 @@ require File.dirname(__FILE__) + '/../../spec_helper' describe 'EC2.describe_addresses' do before(:all) do - @public_ip = ec2.allocate_address + @public_ip = ec2.allocate_address.body[:public_ip] end after(:all) do @@ -12,9 +12,9 @@ describe 'EC2.describe_addresses' do it "should return proper attributes" do actual = ec2.describe_addresses(@public_ip) + actual.body[:request_id].should be_a(String) item = actual.body[:addresses].select {|address| address[:public_ip] == @public_ip} item.should_not be_nil - p actual end end diff --git a/spec/aws/ec2/release_address_spec.rb b/spec/aws/ec2/release_address_spec.rb index d16641513..75057ecf5 100644 --- a/spec/aws/ec2/release_address_spec.rb +++ b/spec/aws/ec2/release_address_spec.rb @@ -3,13 +3,13 @@ require File.dirname(__FILE__) + '/../../spec_helper' describe 'EC2.release' do before(:all) do - @public_ip = ec2.allocate_address + @public_ip = ec2.allocate_address.body[:public_ip] end it "should return proper attributes" do - actual = ec2.release_address(@public_ip.body[:public_ip]) + actual = ec2.release_address(@public_ip) + actual.body[:request_id].should be_a(String) actual.body[:return].should == true - p actual end end