diff options
Diffstat (limited to 'test/unit/obj/test_server.py')
-rwxr-xr-x | test/unit/obj/test_server.py | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/test/unit/obj/test_server.py b/test/unit/obj/test_server.py index 435f26457..b9f934515 100755 --- a/test/unit/obj/test_server.py +++ b/test/unit/obj/test_server.py @@ -3266,6 +3266,16 @@ class TestObjectController(unittest.TestCase): # but file still exists self.assert_(os.path.isfile(objfile)) + # make the x-if-delete-at with some wrong bits + req = Request.blank( + '/sda1/p/a/c/o', + environ={'REQUEST_METHOD': 'DELETE'}, + headers={'X-Timestamp': delete_at_timestamp, + 'X-If-Delete-At': int(time() + 1)}) + resp = req.get_response(self.object_controller) + self.assertEquals(resp.status_int, 412) + self.assertTrue(os.path.isfile(objfile)) + # make the x-if-delete-at with all the right bits req = Request.blank( '/sda1/p/a/c/o', @@ -3273,9 +3283,28 @@ class TestObjectController(unittest.TestCase): headers={'X-Timestamp': delete_at_timestamp, 'X-If-Delete-At': delete_at_timestamp}) resp = req.get_response(self.object_controller) - self.assertEquals(resp.status_int, 404) + self.assertEquals(resp.status_int, 204) self.assertFalse(os.path.isfile(objfile)) + # make the x-if-delete-at with all the right bits (again) + req = Request.blank( + '/sda1/p/a/c/o', + environ={'REQUEST_METHOD': 'DELETE'}, + headers={'X-Timestamp': delete_at_timestamp, + 'X-If-Delete-At': delete_at_timestamp}) + resp = req.get_response(self.object_controller) + self.assertEquals(resp.status_int, 412) + self.assertFalse(os.path.isfile(objfile)) + + # make the x-if-delete-at for some not found + req = Request.blank( + '/sda1/p/a/c/o-not-found', + environ={'REQUEST_METHOD': 'DELETE'}, + headers={'X-Timestamp': delete_at_timestamp, + 'X-If-Delete-At': delete_at_timestamp}) + resp = req.get_response(self.object_controller) + self.assertEquals(resp.status_int, 404) + def test_DELETE_if_delete_at(self): test_time = time() + 10000 req = Request.blank( |