def test_permission_error_raises_fr(self, *_): # Setup with open(self.file_name, 'wb+') as f: f.write(os.urandom(PSK_FILE_SIZE)) # Test error_raised = False try: with mock.patch('builtins.open', side_effect=PermissionError): key_ex_psk_rx(*self.args) except FunctionReturn as inst: error_raised = True self.assertEqual("Error: No read permission for the PSK file.", inst.message) self.assertTrue(error_raised)
def test_valid_psk_overwrite_failure(self, *_: Any) -> None: # Setup keyset = self.key_list.get_keyset(nick_to_pub_key("Alice")) keyset.rx_mk = bytes(SYMMETRIC_KEY_LENGTH) keyset.rx_hk = bytes(SYMMETRIC_KEY_LENGTH) salt = os.urandom(ARGON2_SALT_LENGTH) rx_key = os.urandom(SYMMETRIC_KEY_LENGTH) rx_hek = os.urandom(SYMMETRIC_KEY_LENGTH) kek = argon2_kdf('test_password', salt, time_cost=1, memory_cost=100, parallelism=1) ct_tag = encrypt_and_sign(rx_key + rx_hek, key=kek) with open(self.file_name, 'wb+') as f: f.write(salt + ct_tag) # Test self.assertTrue(os.path.isfile(self.file_name)) self.assertIsNone(key_ex_psk_rx(*self.args)) self.assertTrue(os.path.isfile(self.file_name)) self.assertEqual(keyset.rx_mk, rx_key) self.assertEqual(keyset.rx_hk, rx_hek)