From b766a55b0a74a72a455c9fa5e2df885cea2a34cc Mon Sep 17 00:00:00 2001 From: "B. Petersen" Date: Wed, 4 Dec 2019 01:42:44 +0100 Subject: [PATCH] in set_chat_name(), bind value to sql using ?-operator, add a test to check the name is really changed --- src/chat.rs | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/chat.rs b/src/chat.rs index 5f49dae1f..97acde20a 100644 --- a/src/chat.rs +++ b/src/chat.rs @@ -1719,12 +1719,8 @@ pub fn set_chat_name( if sql::execute( context, &context.sql, - format!( - "UPDATE chats SET name='{}' WHERE id={};", - new_name.as_ref(), - chat_id as i32 - ), - params![], + "UPDATE chats SET name=? WHERE id=?;", + params![new_name.as_ref(), chat_id as i32], ) .is_ok() { @@ -2345,4 +2341,20 @@ mod tests { assert_eq!(chatlist_len(&t.ctx, DC_GCL_NO_SPECIALS), 1); assert_eq!(chatlist_len(&t.ctx, DC_GCL_ARCHIVED_ONLY), 1); } + + #[test] + fn test_set_chat_name() { + let t = dummy_context(); + let chat_id = create_group_chat(&t.ctx, VerifiedStatus::Unverified, "foo").unwrap(); + assert_eq!( + Chat::load_from_db(&t.ctx, chat_id).unwrap().get_name(), + "foo" + ); + + set_chat_name(&t.ctx, chat_id, "bar").unwrap(); + assert_eq!( + Chat::load_from_db(&t.ctx, chat_id).unwrap().get_name(), + "bar" + ); + } }