On 08/09/2017 10:59 AM, Markus Armbruster wrote: > Eric Blake <ebl...@redhat.com> writes: > >> Leaving interpolation into JSON to qobject_from_jsonf() is more >> robust than building QMP input manually; however, we have a few >> places where code is already creating a QDict to interpolate >> individual arguments, which cannot be reproduced with the >> qobject_from_jsonf() parser. Expose a public wrapper >> qmp_args_dict() for the internal helper qmp_args_dict_async() >> that we needed earlier for qmp_args(), and fix a test to use >> the new helper. >> >> Signed-off-by: Eric Blake <ebl...@redhat.com> >> ---
>> +++ b/tests/device-introspect-test.c >> @@ -36,8 +36,7 @@ static QList *qom_list_types(const char *implements, bool >> abstract) >> if (implements) { >> qdict_put_str(args, "implements", implements); >> } >> - resp = qmp("{'execute': 'qom-list-types'," >> - " 'arguments': %p }", args); >> + resp = qmp_args_dict("qom-list-types", args); >> g_assert(qdict_haskey(resp, "return")); >> ret = qdict_get_qlist(resp, "return"); >> QINCREF(ret); > > If we had five of these, the helper would be worth its keep. This patch only has one client, but 20/22 adds another. Is having 2 clients sufficient to keep it (not quite the 5 that makes it obvious, but still a good reuse of code)? -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature