Marc-André Lureau <marcandre.lur...@redhat.com> writes: > Check that invalid args on commands without arguments returns an error. > > Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> > --- > tests/test-qga.c | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/tests/test-qga.c b/tests/test-qga.c > index 21f44f8..40af649 100644 > --- a/tests/test-qga.c > +++ b/tests/test-qga.c > @@ -198,6 +198,26 @@ static void test_qga_ping(gconstpointer fix) > QDECREF(ret); > } > > +static void test_qga_invalid_args(gconstpointer fix) > +{ > + const TestFixture *fixture = fix; > + QDict *ret, *error; > + const gchar *class, *desc; > + > + ret = qmp_fd(fixture->fd, "{'execute': 'guest-ping', " > + "'arguments': {'foo': 42 }}"); > + g_assert_nonnull(ret); > + > + error = qdict_get_qdict(ret, "error"); > + class = qdict_get_try_str(error, "class"); > + desc = qdict_get_try_str(error, "desc"); > + > + g_assert_cmpstr(class, ==, "GenericError"); > + g_assert_cmpstr(desc, ==, "QMP input object member 'foo' is unexpected");
We generally refrain from expecting an exact error message in tests, but this file does it already elsewhere, so no objection. > + > + QDECREF(ret); > +} > + > static void test_qga_invalid_cmd(gconstpointer fix) > { > const TestFixture *fixture = fix; > @@ -911,6 +931,7 @@ int main(int argc, char **argv) > g_test_add_data_func("/qga/file-write-read", &fix, > test_qga_file_write_read); > g_test_add_data_func("/qga/get-time", &fix, test_qga_get_time); > g_test_add_data_func("/qga/invalid-cmd", &fix, test_qga_invalid_cmd); > + g_test_add_data_func("/qga/invalid-args", &fix, test_qga_invalid_args); > g_test_add_data_func("/qga/fsfreeze-status", &fix, > test_qga_fsfreeze_status);