]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
test_vfs_gpfs: Add test for winattr mappings
authorChristof Schmitt <cs@samba.org>
Tue, 18 Aug 2020 21:17:32 +0000 (14:17 -0700)
committerChristof Schmitt <cs@samba.org>
Tue, 8 Sep 2020 21:35:41 +0000 (21:35 +0000)
Signed-off-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/modules/test_vfs_gpfs.c

index 05f12d0b24a21eb8c5eadefd9387526809b6dd6b..6feb6b80407cb8ccbbb7bd2ae47c47034622927f 100644 (file)
@@ -50,11 +50,45 @@ static void test_gpfs_lease_mapping(void **state)
        assert_int_equal(lease_type_to_gpfs(F_UNLCK), GPFS_LEASE_NONE);
 }
 
+static void test_gpfs_winattrs_to_dosmode(void **state)
+{
+       assert_int_equal(vfs_gpfs_winattrs_to_dosmode(GPFS_WINATTR_ARCHIVE),
+                        FILE_ATTRIBUTE_ARCHIVE);
+       assert_int_equal(vfs_gpfs_winattrs_to_dosmode(GPFS_WINATTR_READONLY),
+                        FILE_ATTRIBUTE_READONLY);
+       assert_int_equal(vfs_gpfs_winattrs_to_dosmode(GPFS_WINATTR_HIDDEN),
+                        FILE_ATTRIBUTE_HIDDEN);
+       assert_int_equal(vfs_gpfs_winattrs_to_dosmode(GPFS_WINATTR_OFFLINE),
+                        FILE_ATTRIBUTE_OFFLINE);
+       assert_int_equal(vfs_gpfs_winattrs_to_dosmode(GPFS_WINATTR_SPARSE_FILE),
+                        FILE_ATTRIBUTE_SPARSE);
+       assert_int_equal(vfs_gpfs_winattrs_to_dosmode(GPFS_WINATTR_SYSTEM),
+                        FILE_ATTRIBUTE_SYSTEM);
+}
+
+static void test_dosmode_to_gpfs_winattrs(void **state)
+{
+       assert_int_equal(vfs_gpfs_dosmode_to_winattrs(FILE_ATTRIBUTE_ARCHIVE),
+                        GPFS_WINATTR_ARCHIVE);
+       assert_int_equal(vfs_gpfs_dosmode_to_winattrs(FILE_ATTRIBUTE_HIDDEN),
+                        GPFS_WINATTR_HIDDEN);
+       assert_int_equal(vfs_gpfs_dosmode_to_winattrs(FILE_ATTRIBUTE_OFFLINE),
+                        GPFS_WINATTR_OFFLINE);
+       assert_int_equal(vfs_gpfs_dosmode_to_winattrs(FILE_ATTRIBUTE_READONLY),
+                        GPFS_WINATTR_READONLY);
+       assert_int_equal(vfs_gpfs_dosmode_to_winattrs(FILE_ATTRIBUTE_SPARSE),
+                        GPFS_WINATTR_SPARSE_FILE);
+       assert_int_equal(vfs_gpfs_dosmode_to_winattrs(FILE_ATTRIBUTE_SYSTEM),
+                        GPFS_WINATTR_SYSTEM);
+}
+
 int main(int argc, char **argv)
 {
        const struct CMUnitTest tests[] = {
                cmocka_unit_test(test_share_deny_mapping),
                cmocka_unit_test(test_gpfs_lease_mapping),
+               cmocka_unit_test(test_gpfs_winattrs_to_dosmode),
+               cmocka_unit_test(test_dosmode_to_gpfs_winattrs),
        };
 
        cmocka_set_message_output(CM_OUTPUT_SUBUNIT);