def test_seek(self): """Tests seeking in a FilePart.""" filename = 'test_seek' contents = 100 * 'x' part_length = 23 start_pos = 50 fpath = self.CreateTempFile(file_name=filename, contents=contents) fp = FilePart(fpath, start_pos, part_length) offset = 10 # Absolute positioning. fp.seek(offset) self.assertEqual(start_pos + offset, fp._fp.tell()) self.assertEqual(offset, fp.tell()) # Relative positioning. fp.seek(offset, whence=os.SEEK_CUR) self.assertEqual(start_pos + 2 * offset, fp._fp.tell()) self.assertEqual(2 * offset, fp.tell()) # Absolute positioning from EOF. fp.seek(-offset, whence=os.SEEK_END) self.assertEqual(start_pos + part_length - offset, fp._fp.tell()) self.assertEqual(part_length - offset, fp.tell()) # Seek past EOF. fp.seek(1, whence=os.SEEK_END) self.assertEqual(start_pos + part_length + 1, fp._fp.tell()) self.assertEqual(part_length + 1, fp.tell())
def test_seek(self): filename = 'test_seek' contents = 100 * 'x' part_length = 23 start_pos = 50 fpath = self.CreateTempFile(file_name=filename, contents=contents) fp = FilePart(fpath, start_pos, part_length) offset = 10 # Absolute positioning. fp.seek(offset) self.assertEqual(start_pos + offset, fp._fp.tell()) self.assertEqual(offset, fp.tell()) # Relative positioning. fp.seek(offset, whence=os.SEEK_CUR) self.assertEqual(start_pos + 2 * offset, fp._fp.tell()) self.assertEqual(2 * offset, fp.tell()) # Absolute positioning from EOF. fp.seek(-offset, whence=os.SEEK_END) self.assertEqual(start_pos + part_length - offset, fp._fp.tell()) self.assertEqual(part_length - offset, fp.tell()) # Seek past EOF. fp.seek(1, whence=os.SEEK_END) self.assertEqual(start_pos + part_length + 1, fp._fp.tell()) self.assertEqual(part_length + 1, fp.tell())
def test_tell(self): filename = 'test_tell' contents = 100 * 'x' fpath = self.CreateTempFile(file_name=filename, contents=contents) part_length = 23 start_pos = 50 fp = FilePart(fpath, start_pos, part_length) self.assertEqual(start_pos, fp._fp.tell()) self.assertEqual(0, fp.tell())