From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40755) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZvqWp-0002TK-2l for qemu-devel@nongnu.org; Mon, 09 Nov 2015 12:46:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZvqWo-0000Ml-2v for qemu-devel@nongnu.org; Mon, 09 Nov 2015 12:46:50 -0500 Received: from mx1.redhat.com ([209.132.183.28]:37138) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZvqWn-0000Md-TG for qemu-devel@nongnu.org; Mon, 09 Nov 2015 12:46:50 -0500 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (Postfix) with ESMTPS id 937E319F391 for ; Mon, 9 Nov 2015 17:46:49 +0000 (UTC) From: Markus Armbruster Date: Mon, 9 Nov 2015 18:46:40 +0100 Message-Id: <1447091204-10226-9-git-send-email-armbru@redhat.com> In-Reply-To: <1447091204-10226-1-git-send-email-armbru@redhat.com> References: <1447091204-10226-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PULL 08/12] qapi: More tests of alternate output List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org From: Eric Blake The testsuite was only covering that we could output the 'int' branch of an alternate (no additional allocation/cleanup required). Add a test of the 'str' branch, to make sure that things still work even when a branch involves allocation. Update to modern style of g_new0() over g_malloc0() while touching it. Signed-off-by: Eric Blake Message-Id: <1446791754-23823-9-git-send-email-eblake@redhat.com> Signed-off-by: Markus Armbruster --- tests/test-qmp-output-visitor.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/tests/test-qmp-output-visitor.c b/tests/test-qmp-output-visitor.c index 0164984..0d0c859 100644 --- a/tests/test-qmp-output-visitor.c +++ b/tests/test-qmp-output-visitor.c @@ -425,8 +425,9 @@ static void test_visitor_out_alternate(TestOutputVisitorData *data, const void *unused) { QObject *arg; + UserDefAlternate *tmp; - UserDefAlternate *tmp = g_malloc0(sizeof(UserDefAlternate)); + tmp = g_new0(UserDefAlternate, 1); tmp->type = USER_DEF_ALTERNATE_KIND_I; tmp->u.i = 42; @@ -438,6 +439,19 @@ static void test_visitor_out_alternate(TestOutputVisitorData *data, qapi_free_UserDefAlternate(tmp); qobject_decref(arg); + + tmp = g_new0(UserDefAlternate, 1); + tmp->type = USER_DEF_ALTERNATE_KIND_S; + tmp->u.s = g_strdup("hello"); + + visit_type_UserDefAlternate(data->ov, &tmp, NULL, &error_abort); + arg = qmp_output_get_qobject(data->qov); + + g_assert(qobject_type(arg) == QTYPE_QSTRING); + g_assert_cmpstr(qstring_get_str(qobject_to_qstring(arg)), ==, "hello"); + + qapi_free_UserDefAlternate(tmp); + qobject_decref(arg); } static void test_visitor_out_empty(TestOutputVisitorData *data, -- 2.4.3