test/webdav_resource.c

branch
dav-2
changeset 911
73f5a1a6dcf1
parent 910
bedd3aabcd36
--- a/test/webdav_resource.c	Mon Feb 09 19:10:37 2026 +0100
+++ b/test/webdav_resource.c	Tue Feb 10 20:41:15 2026 +0100
@@ -270,3 +270,27 @@
         dav_session_destroy(sn);
     }
 }
+
+CX_TEST(test_dav_copy_webdav) {
+    CX_TEST_DO {
+        DavSession *sn = get_test_webdav_session();
+        
+        DavResource *res1 = dav_resource_new(sn, "/test_dav_copy_webdav.txt");
+        CX_TEST_ASSERT(!dav_create(res1));
+        
+        cxstring content = cx_str("Copy 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_copy_webdav_dest.txt");
+        CX_TEST_ASSERT(!dav_exists(res2));
+        
+        CX_TEST_ASSERT(!dav_copy(res1, res2->path));
+        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);
+    }
+}

mercurial