def test_write_header(self): self.mock_serialize_header.return_value = b'12345' self.mock_serialize_header_auth.return_value = b'67890' pt_stream = io.BytesIO(self.plaintext) test_encryptor = StreamEncryptor( source=pt_stream, key_provider=self.mock_key_provider, algorithm=aws_encryption_sdk.internal.defaults.ALGORITHM, frame_length=self.mock_frame_length ) test_encryptor.signer = sentinel.signer test_encryptor.content_type = sentinel.content_type test_encryptor._header = sentinel.header test_encryptor.output_buffer = b'' test_encryptor._encryption_materials = self.mock_encryption_materials test_encryptor._derived_data_key = sentinel.derived_data_key test_encryptor._write_header() self.mock_serialize_header.assert_called_once_with( header=test_encryptor._header, signer=sentinel.signer ) self.mock_serialize_header_auth.assert_called_once_with( algorithm=self.mock_encryption_materials.algorithm, header=b'12345', data_encryption_key=sentinel.derived_data_key, signer=sentinel.signer ) assert test_encryptor.output_buffer == b'1234567890'
def test_write_header(self): self.mock_serialize_header.return_value = b"12345" self.mock_serialize_header_auth.return_value = b"67890" pt_stream = io.BytesIO(self.plaintext) test_encryptor = StreamEncryptor( source=pt_stream, materials_manager=self.mock_materials_manager, algorithm=aws_encryption_sdk.internal.defaults.ALGORITHM, frame_length=self.mock_frame_length, commitment_policy=self.mock_commitment_policy, ) test_encryptor.signer = sentinel.signer test_encryptor.content_type = sentinel.content_type test_encryptor._header = sentinel.header sentinel.header.version = SerializationVersion.V1 test_encryptor.output_buffer = b"" test_encryptor._encryption_materials = self.mock_encryption_materials test_encryptor._derived_data_key = sentinel.derived_data_key test_encryptor._write_header() self.mock_serialize_header.assert_called_once_with( header=test_encryptor._header, signer=sentinel.signer) self.mock_serialize_header_auth.assert_called_once_with( version=sentinel.header.version, algorithm=self.mock_encryption_materials.algorithm, header=b"12345", data_encryption_key=sentinel.derived_data_key, signer=sentinel.signer, ) assert test_encryptor.output_buffer == b"1234567890"
def test_read_bytes_less_than_buffer(self, mock_read_non_framed, mock_read_framed): pt_stream = io.BytesIO(self.plaintext) test_encryptor = StreamEncryptor(source=pt_stream, key_provider=self.mock_key_provider) test_encryptor.output_buffer = b"1234567" test_encryptor._read_bytes(5) assert not mock_read_non_framed.called assert not mock_read_framed.called
def test_read_bytes_less_than_buffer(self, mock_read_non_framed, mock_read_framed): pt_stream = io.BytesIO(self.plaintext) test_encryptor = StreamEncryptor( source=pt_stream, materials_manager=self.mock_materials_manager, commitment_policy=self.mock_commitment_policy, ) test_encryptor.output_buffer = b"1234567" test_encryptor._read_bytes(5) assert not mock_read_non_framed.called assert not mock_read_framed.called