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'
Example #2
0
 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)
Example #3
0
 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)