2 Unix SMB/CIFS implementation.
3 Samba utility functions
4 Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2008
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
21 #include "lib/torture/torture.h"
23 static void subunit_suite_start(struct torture_context
*ctx
,
24 struct torture_suite
*suite
)
28 static void subunit_print_testname(struct torture_context
*ctx
,
29 struct torture_tcase
*tcase
,
30 struct torture_test
*test
)
32 if (!strcmp(tcase
->name
, test
->name
)) {
33 printf("%s", test
->name
);
35 printf("%s.%s", tcase
->name
, test
->name
);
39 static void subunit_test_start(struct torture_context
*ctx
,
40 struct torture_tcase
*tcase
,
41 struct torture_test
*test
)
44 subunit_print_testname(ctx
, tcase
, test
);
48 static void subunit_test_result(struct torture_context
*context
,
49 enum torture_result res
, const char *reason
)
65 subunit_print_testname(context
, context
->active_tcase
, context
->active_test
);
68 printf(" [\n%s\n]", reason
);
72 static void subunit_comment(struct torture_context
*test
,
75 fprintf(stderr
, "%s", comment
);
78 static void subunit_warning(struct torture_context
*test
,
81 fprintf(stderr
, "WARNING!: %s\n", comment
);
84 const struct torture_ui_ops torture_subunit_ui_ops
= {
85 .comment
= subunit_comment
,
86 .warning
= subunit_warning
,
87 .test_start
= subunit_test_start
,
88 .test_result
= subunit_test_result
,
89 .suite_start
= subunit_suite_start