src/server/test/vfs.c

changeset 633
392ec9026b07
parent 579
e10457d74fe1
--- a/src/server/test/vfs.c	Sat Nov 22 12:49:20 2025 +0100
+++ b/src/server/test/vfs.c	Sat Nov 22 14:27:01 2025 +0100
@@ -364,190 +364,190 @@
 //
 /* ------------------------------------------------------------------------- */
 
-UCX_TEST(test_vfs_open) {
+CX_TEST(test_vfs_open) {
     Session *sn = testutil_session();
     Request *rq = testutil_request(sn->pool, "PUT", "/");
     rq->vfs = testvfs_create(sn);
     
     VFSContext *vfs = vfs_request_context(sn, rq);
     
-    UCX_TEST_BEGIN;
-    
-    UCX_TEST_ASSERT(vfs, "vfs is NULL");
+    CX_TEST_DO {
     
-    SYS_FILE f1 = vfs_open(vfs, "/file1", O_CREAT);
-    UCX_TEST_ASSERT(f1, "f1 not opened");
+        CX_TEST_ASSERT(vfs);
+
+        SYS_FILE f1 = vfs_open(vfs, "/file1", O_CREAT);
+        CX_TEST_ASSERT(f1);
+
+        SYS_FILE f2 = vfs_open(vfs, "/file1", 0);
+        CX_TEST_ASSERT(f2);
     
-    SYS_FILE f2 = vfs_open(vfs, "/file1", 0);
-    UCX_TEST_ASSERT(f2, "f2 not opened");
-    
-    UCX_TEST_END;
+    }
     
     testutil_destroy_session(sn);
 }
 
-UCX_TEST(test_vfs_mkdir) {
+CX_TEST(test_vfs_mkdir) {
     Session *sn = testutil_session();
     Request *rq = testutil_request(sn->pool, "PUT", "/");
     rq->vfs = testvfs_create(sn);
     
     VFSContext *vfs = vfs_request_context(sn, rq);
     
-    UCX_TEST_BEGIN;
-    
-    int err = vfs_mkdir(vfs, "/dir");
-    UCX_TEST_ASSERT(err == 0, "error not 0");
+    CX_TEST_DO {
     
-    SYS_FILE fd = vfs_open(vfs, "/dir", 0);
-    UCX_TEST_ASSERT(fd, "no fd");
+        int err = vfs_mkdir(vfs, "/dir");
+        CX_TEST_ASSERT(err == 0);
+
+        SYS_FILE fd = vfs_open(vfs, "/dir", 0);
+        CX_TEST_ASSERT(fd);
     
-    UCX_TEST_END;
+    }
     
     testutil_destroy_session(sn);
 }
 
-UCX_TEST(test_vfs_opendir) {
+CX_TEST(test_vfs_opendir) {
     Session *sn = testutil_session();
     Request *rq = testutil_request(sn->pool, "PUT", "/");
     rq->vfs = testvfs_create(sn);
     
     VFSContext *vfs = vfs_request_context(sn, rq);
     
-    UCX_TEST_BEGIN;
-    
-    int err = vfs_mkdir(vfs, "/dir");
-    UCX_TEST_ASSERT(err == 0, "error not 0");
+    CX_TEST_DO {
     
-    VFSDir *dir = vfs_opendir(vfs, "/dir");
-    UCX_TEST_ASSERT(dir, "no dir");
+        int err = vfs_mkdir(vfs, "/dir");
+        CX_TEST_ASSERT(err == 0);
+
+        VFSDir *dir = vfs_opendir(vfs, "/dir");
+        CX_TEST_ASSERT(dir);
     
-    UCX_TEST_END;
+    }
     
     testutil_destroy_session(sn);
 }
 
-UCX_TEST(test_vfs_readdir) {
+CX_TEST(test_vfs_readdir) {
     Session *sn = testutil_session();
     Request *rq = testutil_request(sn->pool, "PUT", "/");
     rq->vfs = testvfs_create(sn);
     
     VFSContext *vfs = vfs_request_context(sn, rq);
     
-    UCX_TEST_BEGIN;
-    
-    int err = vfs_mkdir(vfs, "/dir");
-    UCX_TEST_ASSERT(err == 0, "error not 0");
-    
-    // add some test file to /dir
-    UCX_TEST_ASSERT(vfs_open(vfs, "/dir/file1", O_CREAT), "creation of file1 failed");
-    UCX_TEST_ASSERT(vfs_open(vfs, "/dir/file2", O_CREAT), "creation of file2 failed");
-    UCX_TEST_ASSERT(vfs_open(vfs, "/dir/file3", O_CREAT), "creation of file3 failed");
-    UCX_TEST_ASSERT(vfs_open(vfs, "/dir/file4", O_CREAT), "creation of file4 failed");
-    
-    VFSDir *dir = vfs_opendir(vfs, "/dir");
-    UCX_TEST_ASSERT(dir, "dir not opened");
+    CX_TEST_DO {
     
-    CxMap *files = cxHashMapCreate(cxDefaultAllocator, CX_STORE_POINTERS, 8);
-    
-    VFSEntry entry;
-    while(vfs_readdir(dir, &entry)) {
-        cxMapPut(files, cx_hash_key_str(entry.name), dir);
-    }
+        int err = vfs_mkdir(vfs, "/dir");
+        CX_TEST_ASSERT(err == 0);
+
+        // add some test file to /dir
+        CX_TEST_ASSERT(vfs_open(vfs, "/dir/file1", O_CREAT));
+        CX_TEST_ASSERT(vfs_open(vfs, "/dir/file2", O_CREAT));
+        CX_TEST_ASSERT(vfs_open(vfs, "/dir/file3", O_CREAT));
+        CX_TEST_ASSERT(vfs_open(vfs, "/dir/file4", O_CREAT));
+
+        VFSDir *dir = vfs_opendir(vfs, "/dir");
+        CX_TEST_ASSERT(dir);
+
+        CxMap *files = cxHashMapCreate(cxDefaultAllocator, CX_STORE_POINTERS, 8);
+
+        VFSEntry entry;
+        while(vfs_readdir(dir, &entry)) {
+            cxMapPut(files, cx_hash_key_str(entry.name), dir);
+        }
+
+        CX_TEST_ASSERT(cxMapSize(files)== 4);
+        CX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file1")));
+        CX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file2")));
+        CX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file3")));
+        CX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file4")));
+
+        cxMapFree(files);
     
-    UCX_TEST_ASSERT(cxMapSize(files)== 4, "wrong files count");
-    UCX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file1")), "file1 missing");
-    UCX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file2")), "file2 missing");
-    UCX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file3")), "file3 missing");
-    UCX_TEST_ASSERT(cxMapGet(files, cx_hash_key_str("file4")), "file4 missing");
-    
-    cxMapFree(files);
-    
-    UCX_TEST_END;
+    }
     
     testutil_destroy_session(sn);
 }
 
-UCX_TEST(test_vfs_unlink) {
+CX_TEST(test_vfs_unlink) {
     Session *sn = testutil_session();
     Request *rq = testutil_request(sn->pool, "PUT", "/");
     rq->vfs = testvfs_create(sn);
     
     VFSContext *vfs = vfs_request_context(sn, rq);
     
-    UCX_TEST_BEGIN;
-    // prepare test
-    int err;
-    err = vfs_mkdir(vfs, "/dir1");
-    UCX_TEST_ASSERT(err == 0, "mkdir 1: error not 0");
-    err = vfs_mkdir(vfs, "/dir2");
-    UCX_TEST_ASSERT(err == 0, "mkdir 1: error not 0");
-    
-    SYS_FILE f1 = vfs_open(vfs, "/file1", O_CREAT);
-    UCX_TEST_ASSERT(f1, "f1 not opened");
-    
-    SYS_FILE f2 = vfs_open(vfs, "/file2", O_CREAT);
-    UCX_TEST_ASSERT(f1, "f2 not opened");
-    
-    SYS_FILE f3 = vfs_open(vfs, "/dir1/file3", O_CREAT);
-    UCX_TEST_ASSERT(f1, "f3 not opened");
+    CX_TEST_DO {
+        // prepare test
+        int err;
+        err = vfs_mkdir(vfs, "/dir1");
+        CX_TEST_ASSERT(err == 0);
+        err = vfs_mkdir(vfs, "/dir2");
+        CX_TEST_ASSERT(err == 0);
+
+        SYS_FILE f1 = vfs_open(vfs, "/file1", O_CREAT);
+        CX_TEST_ASSERT(f1);
+
+        SYS_FILE f2 = vfs_open(vfs, "/file2", O_CREAT);
+        CX_TEST_ASSERT(f1);
+
+        SYS_FILE f3 = vfs_open(vfs, "/dir1/file3", O_CREAT);
+        CX_TEST_ASSERT(f1);
+
+        // test unlink
+        err = vfs_unlink(vfs, "/file1");
+        CX_TEST_ASSERT(err == 0);
+        err = vfs_unlink(vfs, "/dir1/file3");
+        CX_TEST_ASSERT(err == 0);
+
+        err = vfs_unlink(vfs, "/filex");
+        CX_TEST_ASSERT(err != 0);
+
+        // check if files were removed
+        SYS_FILE o1 = vfs_open(vfs, "/file1", O_RDONLY);
+        CX_TEST_ASSERT(o1 == NULL);
+        SYS_FILE o3 = vfs_open(vfs, "/dir1/file3", O_RDONLY);
+        CX_TEST_ASSERT(o1 == NULL);
+
+        // file2 should still be there
+        SYS_FILE o2 = vfs_open(vfs, "/file2", O_RDONLY);
+        CX_TEST_ASSERT(o2);
+
+        // check if dir unlink fails
+        err = vfs_unlink(vfs, "/dir1");
+        CX_TEST_ASSERT(err != 0);
     
-    // test unlink
-    err = vfs_unlink(vfs, "/file1");
-    UCX_TEST_ASSERT(err == 0, "unlink /file1 failed");
-    err = vfs_unlink(vfs, "/dir1/file3");
-    UCX_TEST_ASSERT(err == 0, "unlink /dir1/file3 failed");
-    
-    err = vfs_unlink(vfs, "/filex");
-    UCX_TEST_ASSERT(err != 0, "unlink /filex should fail");
-    
-    // check if files were removed
-    SYS_FILE o1 = vfs_open(vfs, "/file1", O_RDONLY);
-    UCX_TEST_ASSERT(o1 == NULL, "/file1 not deleted");
-    SYS_FILE o3 = vfs_open(vfs, "/dir1/file3", O_RDONLY);
-    UCX_TEST_ASSERT(o1 == NULL, "/dir1/file3 not deleted");
-    
-    // file2 should still be there
-    SYS_FILE o2 = vfs_open(vfs, "/file2", O_RDONLY);
-    UCX_TEST_ASSERT(o2, "/file2 deleted");
-    
-    // check if dir unlink fails
-    err = vfs_unlink(vfs, "/dir1");
-    UCX_TEST_ASSERT(err != 0, "unlink dir1 should fail");
-    
-    UCX_TEST_END;
+    }
     
     testutil_destroy_session(sn);
 }
 
-UCX_TEST(test_vfs_rmdir) {
+CX_TEST(test_vfs_rmdir) {
     Session *sn = testutil_session();
     Request *rq = testutil_request(sn->pool, "PUT", "/");
     rq->vfs = testvfs_create(sn);
     
     VFSContext *vfs = vfs_request_context(sn, rq);
     
-    UCX_TEST_BEGIN;
-    // prepare test
-    int err;
-    err = vfs_mkdir(vfs, "/dir1");
-    UCX_TEST_ASSERT(err == 0, "mkdir 1: error not 0");
-    err = vfs_mkdir(vfs, "/dir2");
-    UCX_TEST_ASSERT(err == 0, "mkdir 1: error not 0");
-    
-    SYS_FILE f1 = vfs_open(vfs, "/dir1/file1", O_CREAT);
-    UCX_TEST_ASSERT(f1, "f1 not opened");
+    CX_TEST_DO {
+        // prepare test
+        int err;
+        err = vfs_mkdir(vfs, "/dir1");
+        CX_TEST_ASSERT(err == 0);
+        err = vfs_mkdir(vfs, "/dir2");
+        CX_TEST_ASSERT(err == 0);
+
+        SYS_FILE f1 = vfs_open(vfs, "/dir1/file1", O_CREAT);
+        CX_TEST_ASSERT(f1);
+
+        err = vfs_rmdir(vfs, "/dir1");
+        CX_TEST_ASSERT(err != 0);
+        err = vfs_rmdir(vfs, "/dir2");
+        CX_TEST_ASSERT(err == 0);
+
+        err = vfs_unlink(vfs, "/dir1/file1");
+        CX_TEST_ASSERT(err == 0);
+        err = vfs_rmdir(vfs, "/dir1");
+        CX_TEST_ASSERT(err == 0);
     
-    err = vfs_rmdir(vfs, "/dir1");
-    UCX_TEST_ASSERT(err != 0, "rmdir /dir1 should fail");
-    err = vfs_rmdir(vfs, "/dir2");
-    UCX_TEST_ASSERT(err == 0, "rmdir /dir2 failed");
-    
-    err = vfs_unlink(vfs, "/dir1/file1");
-    UCX_TEST_ASSERT(err == 0, "unlink failed");
-    err = vfs_rmdir(vfs, "/dir1");
-    UCX_TEST_ASSERT(err == 0, "rmdir /dir1 (2) failed");
-    
-    UCX_TEST_END;
+    }
     
     testutil_destroy_session(sn);
 }

mercurial