def test_read_bytes_from_non_framed_finalize(self): ct_stream = io.BytesIO(VALUES['data_128']) test_decryptor = StreamDecryptor( key_provider=self.mock_key_provider, source=ct_stream ) test_decryptor.body_start = 0 test_decryptor.body_length = test_decryptor.body_end = len(VALUES['data_128']) test_decryptor.decryptor = self.mock_decryptor_instance test_decryptor.verifier = MagicMock() test_decryptor._header = self.mock_header self.mock_decryptor_instance.update.return_value = b'1234' self.mock_decryptor_instance.finalize.return_value = b'5678' test = test_decryptor._read_bytes_from_non_framed_body(len(VALUES['data_128']) + 1) test_decryptor.verifier.update.assert_called_once_with(VALUES['data_128']) self.mock_decryptor_instance.update.assert_called_once_with(VALUES['data_128']) self.mock_update_verifier_with_tag.assert_called_once_with( stream=test_decryptor.source_stream, header=test_decryptor._header, verifier=test_decryptor.verifier ) self.mock_deserialize_footer.assert_called_once_with( stream=test_decryptor.source_stream, verifier=test_decryptor.verifier ) assert test_decryptor.source_stream.closed assert test == b'12345678'
def test_read_bytes_from_non_framed_no_verifier(self): ct_stream = io.BytesIO(VALUES['data_128']) test_decryptor = StreamDecryptor(key_provider=self.mock_key_provider, source=ct_stream) test_decryptor.body_start = 0 test_decryptor.body_length = test_decryptor.body_end = len( VALUES['data_128']) test_decryptor.decryptor = self.mock_decryptor_instance test_decryptor._header = self.mock_header test_decryptor.verifier = None self.mock_decryptor_instance.update.return_value = b'1234' test_decryptor._read_bytes_from_non_framed_body(5)
def test_read_bytes_from_non_framed_message_body_too_small(self): ct_stream = io.BytesIO(VALUES['data_128']) test_decryptor = StreamDecryptor(key_provider=self.mock_key_provider, source=ct_stream) test_decryptor.body_start = 0 test_decryptor.body_length = test_decryptor.body_end = len( VALUES['data_128'] * 2) test_decryptor._header = self.mock_header with six.assertRaisesRegex( self, SerializationError, 'Total message body contents less than specified in body description' ): test_decryptor._read_bytes_from_non_framed_body(1)