s4-torture: Separate out the notify tree subtest
authorVolker Lendecke <vl@samba.org>
Wed, 18 Apr 2012 10:51:26 +0000 (12:51 +0200)
committerVolker Lendecke <vl@samba.org>
Wed, 18 Apr 2012 11:42:14 +0000 (13:42 +0200)
source4/torture/raw/notify.c

index b85ff5b782d8db065a84ad5eeda2fc78479f0c7d..3ebdc0ce06eb1eac3c1c00fa0bc53f9723bc69a6 100644 (file)
@@ -1221,7 +1221,8 @@ done:
 /* 
    test multiple change notifies at different depths and with/without recursion
 */
-static bool test_notify_tree(struct smbcli_state *cli, TALLOC_CTX *mem_ctx)
+static bool test_notify_tree(struct torture_context *mem_ctx,
+                            struct smbcli_state *cli)
 {
        bool ret = true;
        union smb_notify notify;
@@ -1263,6 +1264,10 @@ static bool test_notify_tree(struct smbcli_state *cli, TALLOC_CTX *mem_ctx)
 
        printf("TESTING CHANGE NOTIFY FOR DIFFERENT DEPTHS\n");
 
+       if (!torture_setup_dir(cli, BASEDIR)) {
+               return false;
+       }
+
        io.generic.level = RAW_OPEN_NTCREATEX;
        io.ntcreatex.in.root_fid.fnum = 0;
        io.ntcreatex.in.flags = 0;
@@ -1347,6 +1352,7 @@ static bool test_notify_tree(struct smbcli_state *cli, TALLOC_CTX *mem_ctx)
 
 done:
        smb_raw_exit(cli->session);
+       smbcli_deltree(cli->tree, BASEDIR);
        return ret;
 }
 
@@ -1769,7 +1775,6 @@ static bool test_raw_notify_all(struct torture_context *torture,
                return false;
        }
 
-       ret &= test_notify_tree(cli, torture);
        ret &= test_notify_overflow(cli, torture);
        ret &= test_notify_basedir(cli, torture);
        ret &= test_notify_alignment(cli, torture);
@@ -1795,6 +1800,7 @@ struct torture_suite *torture_raw_notify(TALLOC_CTX *mem_ctx)
        torture_suite_add_1smb_test(suite, "ulogoff", test_notify_ulogoff);
        torture_suite_add_1smb_test(suite, "tcp_dis", test_notify_tcp_dis);
        torture_suite_add_1smb_test(suite, "double", test_notify_double);
+       torture_suite_add_1smb_test(suite, "tree", test_notify_tree);
        torture_suite_add_2smb_test(suite, "all", test_raw_notify_all);
 
        return suite;