fix(tests): update delete_conversation tests to verify all SQL delete operations and adjust settings for fuzz testing

This commit is contained in:
Ivan
2026-04-12 18:58:55 -05:00
parent e230b5ec79
commit 3956986202
3 changed files with 28 additions and 12 deletions
+5 -1
View File
@@ -126,7 +126,11 @@ async def test_auth_login_invalid_json_returns_400(mock_app):
assert "error" in body
@settings(max_examples=40, suppress_health_check=[HealthCheck.function_scoped_fixture])
@settings(
max_examples=40,
suppress_health_check=[HealthCheck.function_scoped_fixture],
deadline=None,
)
@given(body=st.binary(min_size=0, max_size=12000))
def test_auth_login_fuzz_never_500(mock_app, body):
mock_app.config.auth_enabled.set(True)
+13 -7
View File
@@ -22,14 +22,20 @@ class TestMessageHandler(unittest.TestCase):
def test_delete_conversation(self):
self.handler.delete_conversation("local", "dest")
self.assertEqual(self.db.provider.execute.call_count, 2)
self.assertEqual(self.db.provider.execute.call_count, 4)
call_args_list = self.db.provider.execute.call_args_list
first_call_args, _ = call_args_list[0]
second_call_args, _ = call_args_list[1]
self.assertIn("DELETE FROM lxmf_messages", first_call_args[0])
self.assertIn("dest", first_call_args[1])
self.assertIn("DELETE FROM lxmf_conversation_folders", second_call_args[0])
self.assertIn("dest", second_call_args[1])
sql0, p0 = call_args_list[0][0]
sql1, p1 = call_args_list[1][0]
sql2, p2 = call_args_list[2][0]
sql3, p3 = call_args_list[3][0]
self.assertIn("DELETE FROM lxmf_messages", sql0)
self.assertEqual(p0, ["dest"])
self.assertIn("DELETE FROM lxmf_conversation_read_state", sql1)
self.assertEqual(p1, ["dest"])
self.assertIn("DELETE FROM lxmf_conversation_folders", sql2)
self.assertEqual(p2, ["dest"])
self.assertIn("DELETE FROM lxmf_conversation_pins", sql3)
self.assertEqual(p3, ["dest"])
def test_get_conversations_includes_failed_count(self):
self.db.provider.fetchall.return_value = [
+10 -4
View File
@@ -37,10 +37,16 @@ def test_delete_conversation(mock_db):
handler = MessageHandler(mock_db)
handler.delete_conversation("local", "peer")
assert mock_db.provider.execute.call_count == 2
args1, _ = mock_db.provider.execute.call_args_list[0]
assert "DELETE FROM lxmf_messages" in args1[0]
assert args1[1] == ["peer"]
assert mock_db.provider.execute.call_count == 4
calls = [mock_db.provider.execute.call_args_list[i][0] for i in range(4)]
assert "DELETE FROM lxmf_messages" in calls[0][0]
assert calls[0][1] == ["peer"]
assert "DELETE FROM lxmf_conversation_read_state" in calls[1][0]
assert calls[1][1] == ["peer"]
assert "DELETE FROM lxmf_conversation_folders" in calls[2][0]
assert calls[2][1] == ["peer"]
assert "DELETE FROM lxmf_conversation_pins" in calls[3][0]
assert calls[3][1] == ["peer"]
def test_search_messages(mock_db):