diff options
Diffstat (limited to 'test/functional/gluster_swift_tests.py')
-rw-r--r-- | test/functional/gluster_swift_tests.py | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/test/functional/gluster_swift_tests.py b/test/functional/gluster_swift_tests.py index d7a833e..0a721b6 100644 --- a/test/functional/gluster_swift_tests.py +++ b/test/functional/gluster_swift_tests.py @@ -58,6 +58,37 @@ class TestFile(Base): data_read = file.read() self.assertEquals(data,data_read) + def testInvalidHeadersPUT(self): + file = self.env.container.file(Utils.create_name()) + self.assertRaises(ResponseError, + file.write_random, + self.env.file_size, + hdrs={'X-Delete-At': '9876545321'}) + self.assert_status(400) + self.assertRaises(ResponseError, + file.write_random, + self.env.file_size, + hdrs={'X-Delete-After': '60'}) + self.assert_status(400) + + def testInvalidHeadersPOST(self): + file = self.env.container.file(Utils.create_name()) + file.write_random(self.env.file_size) + headers = file.make_headers(cfg={}) + headers.update({ 'X-Delete-At' : '987654321'}) + # Need to call conn.make_request instead of file.sync_metadata + # because sync_metadata calls make_headers. make_headers() + # overwrites any headers in file.metadata as 'user' metadata + # by appending 'X-Object-Meta-' to any of the headers + # in file.metadata. + file.conn.make_request('POST', file.path, hdrs=headers, cfg={}) + self.assertEqual(400, file.conn.response.status) + + headers = file.make_headers(cfg={}) + headers.update({ 'X-Delete-After' : '60'}) + file.conn.make_request('POST', file.path, hdrs=headers, cfg={}) + self.assertEqual(400, file.conn.response.status) + class TestFileUTF8(Base2, TestFile): set_up = False @@ -336,5 +367,3 @@ class TestMultiProtocolAccess(Base): md5_returned = hashlib.md5(data_read_from_mountP).hexdigest() self.assertEquals(md5_returned,file_info['etag']) fhOnMountPoint.close() - - |