1
0
mirror of https://gitlab.com/qemu-project/qemu synced 2024-07-09 04:27:12 +00:00

qga: Add tests for --allow-rpcs option

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Konstantin Kostiuk <kkostiuk@redhat.com>
This commit is contained in:
Konstantin Kostiuk 2023-07-10 12:51:36 +03:00
parent 133789e1bf
commit fcd1ab3add

View File

@ -665,6 +665,36 @@ static void test_qga_blockedrpcs(gconstpointer data)
fixture_tear_down(&fix, NULL);
}
static void test_qga_allowedrpcs(gconstpointer data)
{
TestFixture fix;
QDict *ret, *error;
const gchar *class, *desc;
fixture_setup(&fix, "-a guest-ping,guest-get-time", NULL);
/* check allowed RPCs */
ret = qmp_fd(fix.fd, "{'execute': 'guest-ping'}");
qmp_assert_no_error(ret);
qobject_unref(ret);
ret = qmp_fd(fix.fd, "{'execute': 'guest-get-time'}");
qmp_assert_no_error(ret);
qobject_unref(ret);
/* check something else */
ret = qmp_fd(fix.fd, "{'execute': 'guest-get-fsinfo'}");
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, ==, "CommandNotFound");
g_assert_nonnull(g_strstr_len(desc, -1, "has been disabled"));
qobject_unref(ret);
fixture_tear_down(&fix, NULL);
}
static void test_qga_config(gconstpointer data)
{
GError *error = NULL;
@ -1090,6 +1120,7 @@ int main(int argc, char **argv)
test_qga_fsfreeze_status);
g_test_add_data_func("/qga/blockedrpcs", NULL, test_qga_blockedrpcs);
g_test_add_data_func("/qga/allowedrpcs", NULL, test_qga_allowedrpcs);
g_test_add_data_func("/qga/config", NULL, test_qga_config);
g_test_add_data_func("/qga/guest-exec", &fix, test_qga_guest_exec);
g_test_add_data_func("/qga/guest-exec-separated", &fix,