From 9628ee7a4d89c792078b3cbf7a50136be716d210 Mon Sep 17 00:00:00 2001 From: Chris Roberts Date: Mon, 28 Oct 2013 12:42:53 -0700 Subject: [PATCH] Namespace tagging and move tagging tests prior to bucket deletion --- lib/fog/aws/requests/storage/delete_bucket_tagging.rb | 6 ++++-- lib/fog/aws/requests/storage/get_bucket_tagging.rb | 4 ++-- lib/fog/aws/requests/storage/put_bucket_tagging.rb | 4 +++- tests/aws/requests/storage/bucket_tests.rb | 8 ++++---- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/lib/fog/aws/requests/storage/delete_bucket_tagging.rb b/lib/fog/aws/requests/storage/delete_bucket_tagging.rb index 183d316ae..1b8457c60 100644 --- a/lib/fog/aws/requests/storage/delete_bucket_tagging.rb +++ b/lib/fog/aws/requests/storage/delete_bucket_tagging.rb @@ -28,8 +28,10 @@ module Fog def delete_bucket_tagging(bucket_name) response = Excon::Response.new - if bucket = self.data[:buckets][bucket_name] - bucket.delete(:tagging) + if self.data[:buckets][bucket_name] + if self.data[:bucket_tagging] + self.data[:bucket_tagging].delete(bucket_name) + end response.status = 204 else response.status = 404 diff --git a/lib/fog/aws/requests/storage/get_bucket_tagging.rb b/lib/fog/aws/requests/storage/get_bucket_tagging.rb index 09dacef1e..b5cafdc3d 100644 --- a/lib/fog/aws/requests/storage/get_bucket_tagging.rb +++ b/lib/fog/aws/requests/storage/get_bucket_tagging.rb @@ -37,9 +37,9 @@ module Fog def get_bucket_tagging(bucket_name) response = Excon::Response.new - if bucket = self.data[:buckets][bucket_name] && bucket[:tagging] + if self.data[:buckets][bucket_name] && self.data[:bucket_tagging] && self.data[:bucket_tagging][bucket_name] response.status = 200 - response.body = {'BucketTagging' => bucket[:tagging]} + response.body = {'BucketTagging' => self.data[:bucket_tagging][bucket_name]} else response.status = 404 raise(Excon::Errors.status_error({:expects => 200}, response)) diff --git a/lib/fog/aws/requests/storage/put_bucket_tagging.rb b/lib/fog/aws/requests/storage/put_bucket_tagging.rb index bb201f088..6714903a3 100644 --- a/lib/fog/aws/requests/storage/put_bucket_tagging.rb +++ b/lib/fog/aws/requests/storage/put_bucket_tagging.rb @@ -41,8 +41,10 @@ DATA def put_bucket_tagging(bucket_name, tags) response = Excon::Response.new + if self.data[:buckets][bucket_name] - self.data[:buckets][bucket_name][:tagging] = tags + self.data[:bucket_tagging] ||= {} + self.data[:bucket_tagging][bucket_name] = tags response.status = 204 else response.status = 404 diff --git a/tests/aws/requests/storage/bucket_tests.rb b/tests/aws/requests/storage/bucket_tests.rb index 229e16a44..af4c9b334 100644 --- a/tests/aws/requests/storage/bucket_tests.rb +++ b/tests/aws/requests/storage/bucket_tests.rb @@ -275,10 +275,6 @@ Shindo.tests('Fog::Storage[:aws] | bucket requests', ["aws"]) do Fog::Storage[:aws].put_bucket_cors(@aws_bucket_name, cors) end - tests("#delete_bucket('#{@aws_bucket_name}')").succeeds do - Fog::Storage[:aws].delete_bucket(@aws_bucket_name) - end - tests("bucket tagging") do tests("#put_bucket_tagging('#{@aws_bucket_name}')").succeeds do @@ -295,6 +291,10 @@ Shindo.tests('Fog::Storage[:aws] | bucket requests', ["aws"]) do end end + tests("#delete_bucket('#{@aws_bucket_name}')").succeeds do + Fog::Storage[:aws].delete_bucket(@aws_bucket_name) + end + end tests('failure') do