subtests
.subtests = {
.subtests = {
.subtests = {
.subtests = {
.subtests = {
.subtests = {
.subtests = {
.subtests = {
for (j = 0; j < MAX_SUBTESTS && test->subtests[j].descr; j++) {
instr = test->subtests[j].instr;
flags = test->subtests[j].flags;
regs = &test->subtests[j].regs;
test->subtests[j].descr,
} subtests[MAX_SUBTESTS + 1];
.subtests = {
.subtests = {
.subtests = {
ret = subtests(tests, NULL);
return subtests(tests, NULL);
ret = subtests(tests, NULL);
r = subtests(tests, (void *)(unsigned long)usage);
static int test__sdt_event(struct test_suite *test __maybe_unused, int subtests __maybe_unused)
static int test__sdt_event(struct test_suite *test __maybe_unused, int subtests __maybe_unused)
ASSERT_OK(strcmp("subtest1", set.tests[0].subtests[0]), "subtest name");
ASSERT_OK(strcmp("subtest2", set.tests[0].subtests[1]), "subtest name");
ASSERT_OK(strcmp("subtest", set.tests[1].subtests[0]), "test 1 subtest 0");
ASSERT_OK(strcmp("subtest2", set.tests[1].subtests[1]), "test 1 subtest 1");
free((void *)set->tests[i].subtests[j]);
free(set->tests[i].subtests);
ASSERT_OK(strcmp("arg_parsing", set.tests[0].subtests[0]),
ASSERT_OK(strcmp("arg_parsing", set.tests[0].subtests[0]),
ASSERT_OK(strcmp("*trace*", set.tests[0].subtests[0]), "subtest name");
struct rdonly_map_subtest subtests[] = {
for (i = 0; i < ARRAY_SIZE(subtests); i++) {
const struct rdonly_map_subtest *t = &subtests[i];
filter->tests[i].subtests[j]))
free((void *)set->tests[i].subtests[j]);
free((void *)set->tests[i].subtests);
char **subtests;
test->subtests = NULL;
if (strcmp(subtest_str, test->subtests[i]) == 0) {
ctmp = realloc(test->subtests,
sizeof(*test->subtests) * (test->subtest_cnt + 1));
test->subtests = ctmp;
test->subtests[test->subtest_cnt] = subtest_str;