2 Unix SMB/CIFS implementation.
4 local testing of torture
6 Copyright (C) Jelmer Vernooij 2006
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 #include "torture/torture.h"
25 #include "system/wait.h"
26 #include "torture/util.h"
28 static BOOL test_tempdir(struct torture_context *torture,
31 char *location = NULL;
33 torture_assert_ntstatus_ok(torture, torture_temp_dir(torture, "tempdir", &location),
34 "torture_temp_dir should return NT_STATUS_OK" );
36 torture_assert(torture, directory_exist(location),
37 "created dir doesn't exist");
42 static BOOL test_setup_server(struct torture_context *torture,
47 torture_assert_ntstatus_ok(torture, torture_setup_server(torture,
48 "setupserver-success",
49 "./script/tests/mktestsetup.sh",
51 "starting smbd failed");
53 torture_assert(torture, pid > 0, "Pid invalid");
55 torture_comment(torture, "Created smbd with pid %d", pid);
59 waitpid(pid, NULL, 0);
61 torture_assert_ntstatus_equal(torture, torture_setup_server(torture,
65 NT_STATUS_UNSUCCESSFUL,
66 "invalid script specified");
68 torture_assert(torture, pid == -1, "Pid not -1 after failure");
73 struct torture_suite *torture_local_torture(TALLOC_CTX *mem_ctx)
75 struct torture_suite *suite = torture_suite_create(mem_ctx,
78 torture_suite_add_simple_tcase(suite, "tempdir", test_tempdir, NULL);
79 torture_suite_add_simple_tcase(suite, "setup server", test_setup_server, NULL);