]> git-server-git.apps.pok.os.sepia.ceph.com Git - s3-tests.git/commitdiff
add an atomic put test for removing bucket
authorStephon Striplin <stephon.striplin@dreamhost.com>
Thu, 25 Aug 2011 23:44:18 +0000 (16:44 -0700)
committerStephon Striplin <stephon.striplin@dreamhost.com>
Fri, 26 Aug 2011 00:20:11 +0000 (17:20 -0700)
s3tests/functional/test_s3.py

index 010eb1a5b5946c412524fe54fa29dc4d4df95bd7..e3e745c5769bf42523ebe572bac9690fd0a09f8e 100644 (file)
@@ -2178,6 +2178,23 @@ def test_atomic_dual_write_4mb():
 def test_atomic_dual_write_8mb():
     _test_atomic_dual_write(1024*1024*8)
 
+@attr('fails_on_aws')
+def test_atomic_write_bucket_gone():
+    bucket = get_new_bucket()
+    key = bucket.new_key('foo')
+
+    def remove_bucket():
+        key.delete()
+        bucket.delete()
+
+    # create file of A's but delete the bucket it's in before we finish writing
+    # all of them
+    fp_a = FakeFile(1024*1024, 'A', remove_bucket)
+    e = assert_raises(boto.exception.S3ResponseError, key.set_contents_from_file, fp_a)
+    eq(e.status, 404)
+    eq(e.reason, 'Not Found')
+    eq(e.error_code, 'NoSuchBucket')
+
 def test_ranged_request_response_code():
     content = 'testcontent'