From 82cab70bd884a77fbe4e738725c32c88daca70d6 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Mon, 6 Aug 2018 08:53:35 +0200 Subject: tests: Clean up string interpolation around qtest_qmp_device_add() Leaving interpolation into JSON to qmp() is more robust than building QMP input manually, as explained in the commit before previous. qtest_qmp_device_add() and its wrappers interpolate into JSON as follows: * qtest_qmp_device_add() interpolates members into a JSON object. * So do its wrappers qpci_plug_device_test() and usb_test_hotplug(). * usb_test_hotplug() additionally interpolates strings and numbers into JSON strings. Clean them up: * Have qtest_qmp_device_add() take its extra device properties as arguments for qdict_from_jsonf_nofail() instead of a string containing JSON members. * Drop qpci_plug_device_test(), use qtest_qmp_device_add() directly. * Change usb_test_hotplug() parameter @port to string, to avoid interpolation. Interpolate @hcd_id separately. Bonus: gets rid of a non-literal format string. A step towards compile-time format string checking without triggering -Wformat-nonliteral. Cc: Thomas Huth Signed-off-by: Markus Armbruster Reviewed-by: Eric Blake Message-Id: <20180806065344.7103-15-armbru@redhat.com> --- tests/cpu-plug-test.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'tests/cpu-plug-test.c') diff --git a/tests/cpu-plug-test.c b/tests/cpu-plug-test.c index ab3bf6d..f5d57da 100644 --- a/tests/cpu-plug-test.c +++ b/tests/cpu-plug-test.c @@ -88,8 +88,9 @@ static void test_plug_with_device_add_x86(gconstpointer data) for (c = 0; c < td->cores; c++) { for (t = 0; t < td->threads; t++) { char *id = g_strdup_printf("id-%i-%i-%i", s, c, t); - qtest_qmp_device_add(td->device_model, id, "'socket-id':%u, " - "'core-id':%u, 'thread-id':%u", + qtest_qmp_device_add(td->device_model, id, + "{'socket-id':%u, 'core-id':%u," + " 'thread-id':%u}", s, c, t); g_free(id); } @@ -114,7 +115,7 @@ static void test_plug_with_device_add_coreid(gconstpointer data) for (c = td->cores; c < td->maxcpus / td->sockets / td->threads; c++) { char *id = g_strdup_printf("id-%i", c); - qtest_qmp_device_add(td->device_model, id, "'core-id':%u", c); + qtest_qmp_device_add(td->device_model, id, "{'core-id':%u}", c); g_free(id); } -- cgit v1.1