def setUp(self): super(TestUploadSeekableInputManager, self).setUp() self.upload_input_manager = UploadSeekableInputManager( self.osutil, self.transfer_coordinator) self.fileobj = open(self.filename, 'rb') self.call_args = CallArgs(fileobj=self.fileobj, subscribers=self.subscribers) self.future = self.get_transfer_future(self.call_args)
def setUp(self): super(TestUploadSeekableInputManager, self).setUp() self.upload_input_manager = UploadSeekableInputManager( self.osutil, self.transfer_coordinator) self.fileobj = open(self.filename, 'rb') self.call_args = CallArgs( fileobj=self.fileobj, subscribers=self.subscribers) self.future = self.get_transfer_future(self.call_args)
class TestUploadSeekableInputManager(TestUploadFilenameInputManager): def setUp(self): super(TestUploadSeekableInputManager, self).setUp() self.upload_input_manager = UploadSeekableInputManager( self.osutil, self.transfer_coordinator) self.fileobj = open(self.filename, 'rb') self.call_args = CallArgs( fileobj=self.fileobj, subscribers=self.subscribers) self.future = self.get_transfer_future(self.call_args) def tearDown(self): self.fileobj.close() super(TestUploadSeekableInputManager, self).tearDown() def test_is_compatible_bytes_io(self): self.assertTrue( self.upload_input_manager.is_compatible(six.BytesIO())) def test_not_compatible_for_non_filelike_obj(self): self.assertFalse(self.upload_input_manager.is_compatible(object())) def test_stores_bodies_in_memory_upload_part(self): self.assertTrue( self.upload_input_manager.stores_body_in_memory('upload_part')) def test_get_put_object_body(self): start_pos = 3 self.fileobj.seek(start_pos) adjusted_size = len(self.content) - start_pos self.future.meta.provide_transfer_size(adjusted_size) read_file_chunk = self.upload_input_manager.get_put_object_body( self.future) read_file_chunk.enable_callback() # The fact that the file was seeked to start should be taken into # account in length and content for the read file chunk. with read_file_chunk: self.assertEqual(len(read_file_chunk), adjusted_size) self.assertEqual(read_file_chunk.read(), self.content[start_pos:]) self.assertEqual( self.recording_subscriber.calculate_bytes_seen(), adjusted_size)
class TestUploadSeekableInputManager(TestUploadFilenameInputManager): def setUp(self): super(TestUploadSeekableInputManager, self).setUp() self.upload_input_manager = UploadSeekableInputManager( self.osutil, self.transfer_coordinator) self.fileobj = open(self.filename, 'rb') self.call_args = CallArgs(fileobj=self.fileobj, subscribers=self.subscribers) self.future = self.get_transfer_future(self.call_args) def tearDown(self): self.fileobj.close() super(TestUploadSeekableInputManager, self).tearDown() def test_is_compatible_bytes_io(self): self.assertTrue(self.upload_input_manager.is_compatible(six.BytesIO())) def test_not_compatible_for_non_filelike_obj(self): self.assertFalse(self.upload_input_manager.is_compatible(object())) def test_stores_bodies_in_memory_upload_part(self): self.assertTrue( self.upload_input_manager.stores_body_in_memory('upload_part')) def test_get_put_object_body(self): start_pos = 3 self.fileobj.seek(start_pos) adjusted_size = len(self.content) - start_pos self.future.meta.provide_transfer_size(adjusted_size) read_file_chunk = self.upload_input_manager.get_put_object_body( self.future) read_file_chunk.enable_callback() # The fact that the file was seeked to start should be taken into # account in length and content for the read file chunk. with read_file_chunk: self.assertEqual(len(read_file_chunk), adjusted_size) self.assertEqual(read_file_chunk.read(), self.content[start_pos:]) self.assertEqual(self.recording_subscriber.calculate_bytes_seen(), adjusted_size)
class TestUploadSeekableInputManager(TestUploadFilenameInputManager): def setUp(self): super(TestUploadSeekableInputManager, self).setUp() self.upload_input_manager = UploadSeekableInputManager( self.osutil, self.transfer_coordinator) self.fileobj = open(self.filename, 'rb') self.call_args = CallArgs( fileobj=self.fileobj, subscribers=self.subscribers) self.future = self.get_transfer_future(self.call_args) def tearDown(self): self.fileobj.close() super(TestUploadSeekableInputManager, self).tearDown() def test_is_compatible_bytes_io(self): self.assertTrue( self.upload_input_manager.is_compatible(six.BytesIO())) def test_not_compatible_for_non_filelike_obj(self): self.assertFalse(self.upload_input_manager.is_compatible(object())) def test_stores_bodies_in_memory_upload_part(self): self.assertTrue( self.upload_input_manager.stores_body_in_memory('upload_part'))