mirror of
https://github.com/chatmail/core.git
synced 2026-05-09 01:46:30 +03:00
check_verified_properties: handle NULL in verified_key_fingerprint
A regression due to switching from/to rusqlite
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
- switch back from `sqlx` to `rusqlite` due to performance regressions #2380 #2381 #2385
|
- switch back from `sqlx` to `rusqlite` due to performance regressions #2380 #2381 #2385 #2387
|
||||||
|
|
||||||
- global search performance improvement #2364 #2365 #2366
|
- global search performance improvement #2364 #2365 #2366
|
||||||
|
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
- place user avatar directly into `Chat-User-Avatar` header #2232
|
- place user avatar directly into `Chat-User-Avatar` header #2232
|
||||||
|
|
||||||
- improve tests #2360 #2362 #2370 #2377
|
- improve tests #2360 #2362 #2370 #2377 #2387
|
||||||
|
|
||||||
- cleanup #2359 #2361 #2374 #2376 #2379 #2388
|
- cleanup #2359 #2361 #2374 #2376 #2379 #2388
|
||||||
|
|
||||||
|
|||||||
@@ -1713,7 +1713,7 @@ class TestOnlineAccount:
|
|||||||
ac1._evtracker.wait_securejoin_inviter_progress(1000)
|
ac1._evtracker.wait_securejoin_inviter_progress(1000)
|
||||||
|
|
||||||
def test_qr_verified_group_and_chatting(self, acfactory, lp):
|
def test_qr_verified_group_and_chatting(self, acfactory, lp):
|
||||||
ac1, ac2 = acfactory.get_two_online_accounts()
|
ac1, ac2, ac3 = acfactory.get_many_online_accounts(3)
|
||||||
lp.sec("ac1: create verified-group QR, ac2 scans and joins")
|
lp.sec("ac1: create verified-group QR, ac2 scans and joins")
|
||||||
chat1 = ac1.create_group_chat("hello", verified=True)
|
chat1 = ac1.create_group_chat("hello", verified=True)
|
||||||
assert chat1.is_protected()
|
assert chat1.is_protected()
|
||||||
@@ -1744,6 +1744,29 @@ class TestOnlineAccount:
|
|||||||
assert msg.text == "world"
|
assert msg.text == "world"
|
||||||
assert msg.is_encrypted()
|
assert msg.is_encrypted()
|
||||||
|
|
||||||
|
lp.sec("ac1: create QR code and let ac3 scan it, starting the securejoin")
|
||||||
|
qr = ac1.get_setup_contact_qr()
|
||||||
|
|
||||||
|
lp.sec("ac3: start QR-code based setup contact protocol")
|
||||||
|
ch = ac3.qr_setup_contact(qr)
|
||||||
|
assert ch.id >= 10
|
||||||
|
ac1._evtracker.wait_securejoin_inviter_progress(1000)
|
||||||
|
|
||||||
|
lp.sec("ac1: add ac3 to verified group")
|
||||||
|
chat1.add_contact(ac3)
|
||||||
|
msg = ac2._evtracker.wait_next_incoming_message()
|
||||||
|
assert msg.is_encrypted()
|
||||||
|
assert msg.is_system_message()
|
||||||
|
assert not msg.error
|
||||||
|
|
||||||
|
lp.sec("ac2: send message and let ac3 read it")
|
||||||
|
chat2.send_text("hi")
|
||||||
|
# Skip system message about added member
|
||||||
|
ac3._evtracker.wait_next_incoming_message()
|
||||||
|
msg = ac3._evtracker.wait_next_incoming_message()
|
||||||
|
assert msg.text == "hi"
|
||||||
|
assert msg.is_encrypted()
|
||||||
|
|
||||||
def test_set_get_contact_avatar(self, acfactory, data, lp):
|
def test_set_get_contact_avatar(self, acfactory, data, lp):
|
||||||
lp.sec("configuring ac1 and ac2")
|
lp.sec("configuring ac1 and ac2")
|
||||||
ac1, ac2 = acfactory.get_two_online_accounts()
|
ac1, ac2 = acfactory.get_two_online_accounts()
|
||||||
|
|||||||
@@ -1929,7 +1929,7 @@ async fn check_verified_properties(
|
|||||||
paramsv![],
|
paramsv![],
|
||||||
|row| {
|
|row| {
|
||||||
let to_addr: String = row.get(0)?;
|
let to_addr: String = row.get(0)?;
|
||||||
let is_verified: i32 = row.get(1)?;
|
let is_verified: i32 = row.get(1).unwrap_or(0);
|
||||||
Ok((to_addr, is_verified != 0))
|
Ok((to_addr, is_verified != 0))
|
||||||
},
|
},
|
||||||
|rows| {
|
|rows| {
|
||||||
|
|||||||
Reference in New Issue
Block a user