qapi: Clean up test coverage of simple unions

The tests of UserDefNativeListUnion serve to validate code
generation of simple unions without a base type, except that it
did not have full coverage in the strict test.  The next commits
will remove tests and support for simple unions with a base type,
so there is no real loss at repurposing that test here as
opposed to churn of adding a new test then deleting the old one.

Fix some indentation and long lines while at it.

Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
Eric Blake 2015-05-04 09:05:06 -06:00 committed by Markus Armbruster
parent 3d0c482926
commit 805017b779
3 changed files with 86 additions and 70 deletions

View File

@ -1,7 +1,7 @@
/*
* QMP Input Visitor unit-tests (strict mode).
*
* Copyright (C) 2011-2012 Red Hat Inc.
* Copyright (C) 2011-2012, 2015 Red Hat Inc.
*
* Authors:
* Luiz Capitulino <lcapitulino@redhat.com>
@ -141,18 +141,18 @@ static void test_validate_list(TestInputVisitorData *data,
qapi_free_UserDefOneList(head);
}
static void test_validate_union(TestInputVisitorData *data,
static void test_validate_union_native_list(TestInputVisitorData *data,
const void *unused)
{
UserDefUnion *tmp = NULL;
UserDefNativeListUnion *tmp = NULL;
Visitor *v;
Error *err = NULL;
v = validate_test_init(data, "{ 'type': 'b', 'integer': 41, 'data' : { 'integer': 42 } }");
v = validate_test_init(data, "{ 'type': 'integer', 'data' : [ 1, 2 ] }");
visit_type_UserDefUnion(v, &tmp, NULL, &err);
visit_type_UserDefNativeListUnion(v, &tmp, NULL, &err);
g_assert(!err);
qapi_free_UserDefUnion(tmp);
qapi_free_UserDefNativeListUnion(tmp);
}
static void test_validate_union_flat(TestInputVisitorData *data,
@ -232,18 +232,19 @@ static void test_validate_fail_list(TestInputVisitorData *data,
qapi_free_UserDefOneList(head);
}
static void test_validate_fail_union(TestInputVisitorData *data,
static void test_validate_fail_union_native_list(TestInputVisitorData *data,
const void *unused)
{
UserDefUnion *tmp = NULL;
UserDefNativeListUnion *tmp = NULL;
Error *err = NULL;
Visitor *v;
v = validate_test_init(data, "{ 'type': 'b', 'data' : { 'integer': 42 } }");
v = validate_test_init(data,
"{ 'type': 'integer', 'data' : [ 'string' ] }");
visit_type_UserDefUnion(v, &tmp, NULL, &err);
visit_type_UserDefNativeListUnion(v, &tmp, NULL, &err);
g_assert(err);
qapi_free_UserDefUnion(tmp);
qapi_free_UserDefNativeListUnion(tmp);
}
static void test_validate_fail_union_flat(TestInputVisitorData *data,
@ -309,26 +310,26 @@ int main(int argc, char **argv)
&testdata, test_validate_struct_nested);
validate_test_add("/visitor/input-strict/pass/list",
&testdata, test_validate_list);
validate_test_add("/visitor/input-strict/pass/union",
&testdata, test_validate_union);
validate_test_add("/visitor/input-strict/pass/union-flat",
&testdata, test_validate_union_flat);
validate_test_add("/visitor/input-strict/pass/union-anon",
&testdata, test_validate_union_anon);
validate_test_add("/visitor/input-strict/pass/union-native-list",
&testdata, test_validate_union_native_list);
validate_test_add("/visitor/input-strict/fail/struct",
&testdata, test_validate_fail_struct);
validate_test_add("/visitor/input-strict/fail/struct-nested",
&testdata, test_validate_fail_struct_nested);
validate_test_add("/visitor/input-strict/fail/list",
&testdata, test_validate_fail_list);
validate_test_add("/visitor/input-strict/fail/union",
&testdata, test_validate_fail_union);
validate_test_add("/visitor/input-strict/fail/union-flat",
&testdata, test_validate_fail_union_flat);
validate_test_add("/visitor/input-strict/fail/union-flat-no-discriminator",
&testdata, test_validate_fail_union_flat_no_discrim);
validate_test_add("/visitor/input-strict/fail/union-anon",
&testdata, test_validate_fail_union_anon);
validate_test_add("/visitor/input-strict/fail/union-native-list",
&testdata, test_validate_fail_union_native_list);
g_test_run();

View File

@ -1,7 +1,7 @@
/*
* QMP Input Visitor unit-tests.
*
* Copyright (C) 2011 Red Hat Inc.
* Copyright (C) 2011, 2015 Red Hat Inc.
*
* Authors:
* Luiz Capitulino <lcapitulino@redhat.com>
@ -712,13 +712,16 @@ int main(int argc, char **argv)
&in_visitor_data,
test_visitor_in_native_list_uint32);
input_visitor_test_add("/visitor/input/native_list/uint64",
&in_visitor_data, test_visitor_in_native_list_uint64);
&in_visitor_data,
test_visitor_in_native_list_uint64);
input_visitor_test_add("/visitor/input/native_list/bool",
&in_visitor_data, test_visitor_in_native_list_bool);
input_visitor_test_add("/visitor/input/native_list/str",
&in_visitor_data, test_visitor_in_native_list_string);
&in_visitor_data,
test_visitor_in_native_list_string);
input_visitor_test_add("/visitor/input/native_list/number",
&in_visitor_data, test_visitor_in_native_list_number);
&in_visitor_data,
test_visitor_in_native_list_number);
g_test_run();

View File

@ -1,7 +1,7 @@
/*
* QMP Output Visitor unit-tests.
*
* Copyright (C) 2011 Red Hat Inc.
* Copyright (C) 2011, 2015 Red Hat Inc.
*
* Authors:
* Luiz Capitulino <lcapitulino@redhat.com>
@ -871,29 +871,41 @@ int main(int argc, char **argv)
output_visitor_test_add("/visitor/output/empty",
&out_visitor_data, test_visitor_out_empty);
output_visitor_test_add("/visitor/output/native_list/int",
&out_visitor_data, test_visitor_out_native_list_int);
&out_visitor_data,
test_visitor_out_native_list_int);
output_visitor_test_add("/visitor/output/native_list/int8",
&out_visitor_data, test_visitor_out_native_list_int8);
&out_visitor_data,
test_visitor_out_native_list_int8);
output_visitor_test_add("/visitor/output/native_list/int16",
&out_visitor_data, test_visitor_out_native_list_int16);
&out_visitor_data,
test_visitor_out_native_list_int16);
output_visitor_test_add("/visitor/output/native_list/int32",
&out_visitor_data, test_visitor_out_native_list_int32);
&out_visitor_data,
test_visitor_out_native_list_int32);
output_visitor_test_add("/visitor/output/native_list/int64",
&out_visitor_data, test_visitor_out_native_list_int64);
&out_visitor_data,
test_visitor_out_native_list_int64);
output_visitor_test_add("/visitor/output/native_list/uint8",
&out_visitor_data, test_visitor_out_native_list_uint8);
&out_visitor_data,
test_visitor_out_native_list_uint8);
output_visitor_test_add("/visitor/output/native_list/uint16",
&out_visitor_data, test_visitor_out_native_list_uint16);
&out_visitor_data,
test_visitor_out_native_list_uint16);
output_visitor_test_add("/visitor/output/native_list/uint32",
&out_visitor_data, test_visitor_out_native_list_uint32);
&out_visitor_data,
test_visitor_out_native_list_uint32);
output_visitor_test_add("/visitor/output/native_list/uint64",
&out_visitor_data, test_visitor_out_native_list_uint64);
&out_visitor_data,
test_visitor_out_native_list_uint64);
output_visitor_test_add("/visitor/output/native_list/bool",
&out_visitor_data, test_visitor_out_native_list_bool);
&out_visitor_data,
test_visitor_out_native_list_bool);
output_visitor_test_add("/visitor/output/native_list/string",
&out_visitor_data, test_visitor_out_native_list_str);
&out_visitor_data,
test_visitor_out_native_list_str);
output_visitor_test_add("/visitor/output/native_list/number",
&out_visitor_data, test_visitor_out_native_list_number);
&out_visitor_data,
test_visitor_out_native_list_number);
g_test_run();