File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1313 "assign_tag" ,
1414 "clear_user_status" ,
1515 "close_poll" ,
16+ "complete_task" ,
1617 "copy_file" ,
1718 "create_announcement" ,
1819 "create_collective" ,
2425 "create_poll" ,
2526 "create_share" ,
2627 "create_tag" ,
28+ "create_task" ,
2729 "create_user" ,
2830 "delete_announcement" ,
2931 "delete_collective" ,
3537 "delete_message" ,
3638 "delete_share" ,
3739 "delete_tag" ,
40+ "delete_task" ,
3841 "delete_trash_item" ,
3942 "delete_user" ,
4043 "disable_app" ,
6063 "get_participants" ,
6164 "get_poll" ,
6265 "get_share" ,
66+ "get_task" ,
67+ "get_tasks" ,
6368 "get_user" ,
6469 "get_user_status" ,
6570 "leave_conversation" ,
7782 "list_notifications" ,
7883 "list_shares" ,
7984 "list_tags" ,
85+ "list_task_lists" ,
8086 "list_trash" ,
8187 "list_users" ,
8288 "list_versions" ,
95101 "update_contact" ,
96102 "update_event" ,
97103 "update_share" ,
104+ "update_task" ,
98105 "upload_file" ,
99106 "vote_poll" ,
100107]
Original file line number Diff line number Diff line change 1212
1313LIST_ID = "tasks"
1414
15+ MKCALENDAR_BODY = (
16+ '<?xml version="1.0" encoding="UTF-8"?>'
17+ '<cal:mkcalendar xmlns:d="DAV:" xmlns:cal="urn:ietf:params:xml:ns:caldav">'
18+ "<d:set><d:prop>"
19+ "<d:displayname>Tasks</d:displayname>"
20+ "<cal:supported-calendar-component-set>"
21+ '<cal:comp name="VTODO"/>'
22+ "</cal:supported-calendar-component-set>"
23+ "</d:prop></d:set>"
24+ "</cal:mkcalendar>"
25+ )
26+
1527
1628@pytest .fixture (autouse = True )
17- async def _cleanup_test_tasks (nc_mcp : McpTestHelper ) -> None :
18- """Delete any leftover test tasks before each test."""
29+ async def _ensure_task_list_and_cleanup (nc_mcp : McpTestHelper ) -> None :
30+ """Ensure the 'tasks' CalDAV list exists and clean up test tasks."""
31+ with contextlib .suppress (Exception ):
32+ await nc_mcp .client .dav_request (
33+ "MKCALENDAR" ,
34+ f"calendars/{ nc_mcp .client ._config .user } /{ LIST_ID } /" ,
35+ body = MKCALENDAR_BODY ,
36+ headers = {"Content-Type" : "application/xml; charset=utf-8" },
37+ )
1938 result = await nc_mcp .call ("get_tasks" , list_id = LIST_ID , limit = 500 )
2039 for task in json .loads (result )["data" ]:
2140 uid = task ["uid" ]
You can’t perform that action at this time.
0 commit comments