diff --git a/lib/fog/rackspace/models/storage/file.rb b/lib/fog/rackspace/models/storage/file.rb index 4142341e9..82117f190 100644 --- a/lib/fog/rackspace/models/storage/file.rb +++ b/lib/fog/rackspace/models/storage/file.rb @@ -124,7 +124,7 @@ module Fog end def metadata_attributes - if etag + if last_modified headers = connection.head_object(directory.key, self.key).headers headers.reject! {|k, v| !metadata_attribute?(k)} else diff --git a/tests/rackspace/models/storage/file_tests.rb b/tests/rackspace/models/storage/file_tests.rb index 12c758f6d..8d2172185 100644 --- a/tests/rackspace/models/storage/file_tests.rb +++ b/tests/rackspace/models/storage/file_tests.rb @@ -26,6 +26,12 @@ Shindo.tests('Fog::Rackspace::Storage | file', ['rackspace']) do directories. create(directory_attributes) + model_tests(@directory.files, file_attributes.merge(:etag => 'foo'), Fog.mocking?) do + tests('#save should not blow up with etag') do + @instance.save + end + end + model_tests(@directory.files, file_attributes, Fog.mocking?) do tests("#metadata should load empty metadata").returns({}) do