add a failing test for Autocrypt Key Transfer failing to extract a private key from an incoming ASM message

This commit is contained in:
holger krekel
2019-07-05 12:46:14 +02:00
parent 12b2a706f0
commit 699b2d48e6
3 changed files with 31 additions and 9 deletions

View File

@@ -252,6 +252,11 @@ class TestOfflineAccount:
assert messages[0].text == "msg1"
assert os.path.exists(messages[1].filename)
def test_ac_setup_message_fails(self, acfactory):
ac1 = acfactory.get_configured_offline_account()
with pytest.raises(RuntimeError):
ac1.initiate_key_transfer()
class TestOnlineAccount:
def test_one_account_init(self, acfactory):
@@ -442,14 +447,20 @@ class TestOnlineAccount:
assert len(messages) == 1
assert messages[0].text == "msg1"
def test_ac_setup(self, acfactory):
def test_ac_setup_message(self, acfactory):
# note that the receiving account needs to be configured and running
# before ther setup message is send. DC does not read old messages
# as of Jul2019
ac1 = acfactory.get_online_configuring_account()
wait_configuration_progress(ac1, 1000)
setup_code = ac1.initiate_key_transfer()
ac2 = acfactory.clone_online_account(ac1)
wait_configuration_progress(ac2, 1000)
ac2._timeout = 10
wait_configuration_progress(ac1, 1000)
assert ac1.get_info()["fingerprint"] != ac2.get_info()["fingerprint"]
setup_code = ac1.initiate_key_transfer()
ac2._evlogger.set_timeout(10)
ev = ac2._evlogger.get_matching("DC_EVENT_INCOMING_MSG|DC_EVENT_MSGS_CHANGED")
msg = ac2.get_message_by_id(ev[2])
assert msg.is_setup_message()
assert 0, setup_code
print("*************** Incoming ASM File at: ", msg.filename)
msg.continue_key_transfer(setup_code)
assert ac1.get_info()["fingerprint"] == ac2.get_info()["fingerprint"]