Commit b5f84310 authored by Markus Armbruster's avatar Markus Armbruster
Browse files

tests/test-qga: Demonstrate the guest-agent ignores "id"



Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
Reviewed-by: default avatarEric Blake <eblake@redhat.com>
Message-Id: <20180703085358.13941-9-armbru@redhat.com>
parent 80cd93bd
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -227,6 +227,25 @@ static void test_qga_ping(gconstpointer fix)
    qobject_unref(ret);
}

static void test_qga_invalid_id(gconstpointer fix)
{
    /*
     * FIXME "id" is ignored; it should either be repeated in the
     * reply, or rejected on input
     */
    const TestFixture *fixture = fix;
    QDict *ret, *val;

    ret = qmp_fd(fixture->fd, "{'execute': 'guest-ping', 'id': 1}");
    g_assert_nonnull(ret);
    qmp_assert_no_error(ret);

    val = qdict_get_qdict(ret, "return");
    g_assert(!qdict_haskey(val, "id"));

    qobject_unref(ret);
}

static void test_qga_invalid_args(gconstpointer fix)
{
    const TestFixture *fixture = fix;
@@ -934,6 +953,7 @@ int main(int argc, char **argv)
    g_test_add_data_func("/qga/file-ops", &fix, test_qga_file_ops);
    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-id", &fix, test_qga_invalid_id);
    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,