def testObjectManifest(self): if (web_front_end == 'apache2'): raise SkipTest() data = File.random_data(10000) parts = random.randrange(2, 10) charsEachPart = len(data) / parts for i in range(parts + 1): if i == 0: file = self.env.container.file('objectmanifest') hdrs = {} hdrs['Content-Length'] = '0' hdrs['X-Object-Manifest'] = str( self.env.container.name) + '/objectmanifest' self.assert_(file.write('', hdrs=hdrs)) self.assert_(file.name in self.env.container.files()) self.assert_(file.read() == '') elif i == parts: file = self.env.container.file('objectmanifest' + '-' + str(i)) segment = data[(i - 1) * charsEachPart:] self.assertTrue(file.write(segment)) else: file = self.env.container.file('objectmanifest' + '-' + str(i)) segment = data[(i - 1) * charsEachPart:i * charsEachPart] self.assertTrue(file.write(segment)) #matching the manifest file content with orignal data, as etag won't match file = self.env.container.file('objectmanifest') data_read = file.read() self.assertEquals(data, data_read)
def testObjectManifest(self): if (web_front_end == 'apache2'): raise SkipTest() data = File.random_data(10000) parts = random.randrange(2,10) charsEachPart = len(data)/parts for i in range(parts+1): if i==0 : file = self.env.container.file('objectmanifest') hdrs={} hdrs['Content-Length']='0' hdrs['X-Object-Manifest']=str(self.env.container.name)+'/objectmanifest' self.assert_(file.write('',hdrs=hdrs)) self.assert_(file.name in self.env.container.files()) self.assert_(file.read() == '') elif i==parts : file = self.env.container.file('objectmanifest'+'-'+str(i)) segment=data[ (i-1)*charsEachPart :] self.assertTrue(file.write(segment)) else : file = self.env.container.file('objectmanifest'+'-'+str(i)) segment=data[ (i-1)*charsEachPart : i*charsEachPart] self.assertTrue(file.write(segment)) #matching the manifest file content with orignal data, as etag won't match file = self.env.container.file('objectmanifest') data_read = file.read() self.assertEquals(data,data_read)
def test_PUT_large_object(self): file_item = self.env.container.file(Utils.create_name()) data = File.random_data(1024 * 1024 * 2) self.assertTrue(file_item.write(data)) self.assert_status(201) self.assertTrue(data == file_item.read()) self.assert_status(200)
def testObjectVersioning(self): versions = random.randrange(2, 10) dataArr = [] #create versions for i in range(versions): data = File.random_data(10000 * (i + 1)) file = self.env.containers['object'].file('object') self.assertTrue(file.write(data)) dataArr.append(data) cont = self.env.containers['versions'] info = cont.info() self.assertEquals(info['object_count'], versions - 1) #match the current version of object with data in arr and delete it for i in range(versions): data = dataArr[-(i + 1)] file = self.env.containers['object'].file('object') self.assertEquals(data, file.read()) self.assert_(file.delete()) self.assert_status(204)
def testObjectVersioning(self): versions = random.randrange(2,10) dataArr=[] #create versions for i in range(versions): data = File.random_data(10000*(i+1)) file = self.env.containers['object'].file('object') self.assertTrue(file.write(data)) dataArr.append(data) cont = self.env.containers['versions'] info = cont.info() self.assertEquals(info['object_count'], versions-1) #match the current version of object with data in arr and delete it for i in range(versions): data = dataArr[-(i+1)] file = self.env.containers['object'].file('object') self.assertEquals(data,file.read()) self.assert_(file.delete()) self.assert_status(204)