diff -r 4a51f896015e -r 8e2727fc4e07 test/webdav_resource.c --- a/test/webdav_resource.c Wed Feb 11 16:11:53 2026 +0100 +++ b/test/webdav_resource.c Sat Feb 14 18:11:29 2026 +0100 @@ -312,3 +312,28 @@ dav_session_destroy(sn); } } + +CX_TEST(test_dav_move_webdav) { + CX_TEST_DO { + DavSession *sn = get_test_webdav_session(); + + DavResource *res1 = dav_resource_new(sn, "/test_dav_move_webdav.txt"); + CX_TEST_ASSERT(!dav_create(res1)); + + cxstring content = cx_str("Move Test Data"); + dav_set_content_data(res1, content.ptr, content.length); + CX_TEST_ASSERT(!dav_store(res1)); + + DavResource *res2 = dav_resource_new(sn, "/test_dav_move_webdav_dest.txt"); + CX_TEST_ASSERT(!dav_exists(res2)); + + CX_TEST_ASSERT(!dav_move(res1, res2->path)); + CX_TEST_ASSERT(!dav_exists(res1)); + CX_TEST_ASSERT(dav_exists(res2)); + CX_TEST_ASSERT(!dav_load(res2)); + // contentlength could be greater if encryption is enabled + CX_TEST_ASSERT(res2->contentlength >= content.length); + + dav_session_destroy(sn); + } +}