diff --git a/deltachat-rpc-client/tests/test_securejoin.py b/deltachat-rpc-client/tests/test_securejoin.py index 2d3734c93..f3935f5d5 100644 --- a/deltachat-rpc-client/tests/test_securejoin.py +++ b/deltachat-rpc-client/tests/test_securejoin.py @@ -29,11 +29,19 @@ def test_qr_securejoin(acfactory): logging.info("Alice creates a verified group") alice_chat = alice.create_group("Verified group", protect=True) + assert alice_chat.get_basic_snapshot().is_protected logging.info("Bob joins verified group") qr_code, _svg = alice_chat.get_qr_code() bob.secure_join(qr_code) + # Check that at least some of the handshake messages are deleted. + for ac in [alice, bob]: + while True: + event = ac.wait_for_event() + if event["kind"] == "ImapMessageDeleted": + break + alice.wait_for_securejoin_inviter_success() # Test that Alice verified Bob's profile. @@ -43,6 +51,10 @@ def test_qr_securejoin(acfactory): bob.wait_for_securejoin_joiner_success() + snapshot = bob.get_message_by_id(bob.wait_for_incoming_msg_event().msg_id).get_snapshot() + assert snapshot.text == "Member Me ({}) added by {}.".format(bob.get_config("addr"), alice.get_config("addr")) + assert snapshot.chat.get_basic_snapshot().is_protected + # Test that Bob verified Alice's profile. bob_contact_alice = bob.get_contact_by_addr(alice.get_config("addr")) bob_contact_alice_snapshot = bob_contact_alice.get_snapshot() diff --git a/python/tests/test_1_online.py b/python/tests/test_1_online.py index d11262882..23b62adfa 100644 --- a/python/tests/test_1_online.py +++ b/python/tests/test_1_online.py @@ -1658,36 +1658,6 @@ def test_ac_setup_message_twice(acfactory, lp): assert ac1.get_info()["fingerprint"] == ac2.get_info()["fingerprint"] -@pytest.mark.parametrize("verified_one_on_one_chats", [0, 1]) -def test_qr_join_chat(acfactory, lp, verified_one_on_one_chats): - ac1, ac2 = acfactory.get_online_accounts(2) - ac1.set_config("verified_one_on_one_chats", verified_one_on_one_chats) - ac2.set_config("verified_one_on_one_chats", verified_one_on_one_chats) - - lp.sec("ac1: create QR code and let ac2 scan it, starting the securejoin") - chat = ac1.create_group_chat("hello") - qr = chat.get_join_qr() - lp.sec("ac2: start QR-code based join-group protocol") - ch = ac2.qr_join_chat(qr) - lp.sec("ac2: qr_join_chat() returned") - assert ch.id >= 10 - # check that at least some of the handshake messages are deleted - ac1._evtracker.get_matching("DC_EVENT_IMAP_MESSAGE_DELETED") - ac2._evtracker.get_matching("DC_EVENT_IMAP_MESSAGE_DELETED") - ac1._evtracker.wait_securejoin_inviter_progress(1000) - - msg = ac2._evtracker.wait_next_incoming_message() - assert msg.text == "Member Me ({}) added by {}.".format(ac2.get_config("addr"), ac1.get_config("addr")) - - # ac1 reloads the chat. - chat = Chat(chat.account, chat.id) - assert not chat.is_protected() - - # ac2 reloads the chat. - ch = Chat(ch.account, ch.id) - assert not ch.is_protected() - - def test_qr_join_chat_with_pending_bobstate_issue4894(acfactory, lp): ac1, ac2, ac3, ac4 = acfactory.get_online_accounts(4)