mirror of
https://github.com/chatmail/core.git
synced 2026-04-17 21:46:35 +03:00
Replacing default key when a profile is already part of verified groups results in `[The message was sent with non-verified encryption. See 'Info' for more details]` messages for other users. It is still possible to import the default key before Delta Chat generates the key.
51 lines
1.7 KiB
Python
51 lines
1.7 KiB
Python
import pytest
|
|
|
|
from deltachat_rpc_client import EventType
|
|
from deltachat_rpc_client.rpc import JsonRpcError
|
|
|
|
|
|
def wait_for_autocrypt_setup_message(account):
|
|
while True:
|
|
event = account.wait_for_event()
|
|
if event.kind == EventType.MSGS_CHANGED and event.msg_id != 0:
|
|
msg_id = event.msg_id
|
|
msg = account.get_message_by_id(msg_id)
|
|
if msg.get_snapshot().is_setupmessage:
|
|
return msg
|
|
|
|
|
|
def test_autocrypt_setup_message_key_transfer(acfactory):
|
|
alice1 = acfactory.get_online_account()
|
|
|
|
alice2 = acfactory.get_unconfigured_account()
|
|
alice2.set_config("addr", alice1.get_config("addr"))
|
|
alice2.set_config("mail_pw", alice1.get_config("mail_pw"))
|
|
alice2.configure()
|
|
|
|
setup_code = alice1.initiate_autocrypt_key_transfer()
|
|
msg = wait_for_autocrypt_setup_message(alice2)
|
|
|
|
# Test that entering wrong code returns an error.
|
|
with pytest.raises(JsonRpcError):
|
|
msg.continue_autocrypt_key_transfer("7037-0673-6287-3013-4095-7956-5617-6806-6756")
|
|
|
|
msg.continue_autocrypt_key_transfer(setup_code)
|
|
|
|
|
|
def test_ac_setup_message_twice(acfactory):
|
|
alice1 = acfactory.get_online_account()
|
|
alice2 = acfactory.get_unconfigured_account()
|
|
alice2.set_config("addr", alice1.get_config("addr"))
|
|
alice2.set_config("mail_pw", alice1.get_config("mail_pw"))
|
|
alice2.configure()
|
|
|
|
# Send the first Autocrypt Setup Message and ignore it.
|
|
_setup_code = alice1.initiate_autocrypt_key_transfer()
|
|
wait_for_autocrypt_setup_message(alice2)
|
|
|
|
# Send the second Autocrypt Setup Message and import it.
|
|
setup_code = alice1.initiate_autocrypt_key_transfer()
|
|
msg = wait_for_autocrypt_setup_message(alice2)
|
|
|
|
msg.continue_autocrypt_key_transfer(setup_code)
|