From ae9ef97b9b7060c90182e93e88acc7eb05e72116 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Thu, 1 Aug 2013 16:28:29 +0200 Subject: [PATCH] qemuagenttest: Check invalid response in shutdown test The shutdown test utilizes waiting for condition to exit the test. This addition will return an error for the shutdown command to see if the condition waiting code will not hang. --- tests/qemuagenttest.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tests/qemuagenttest.c b/tests/qemuagenttest.c index 91ea4e11f3..7d6773c3e8 100644 --- a/tests/qemuagenttest.c +++ b/tests/qemuagenttest.c @@ -324,6 +324,29 @@ testQemuAgentShutdown(const void *data) QEMU_AGENT_SHUTDOWN_REBOOT) < 0) goto cleanup; + /* check negative response, so that we can verify that the agent breaks + * out from sleep */ + + if (qemuMonitorTestAddAgentSyncResponse(test) < 0) + goto cleanup; + + if (qemuMonitorTestAddItem(test, "guest-shutdown", + "{\"error\":" + " {\"class\":\"CommandDisabled\"," + " \"desc\":\"The command guest-shutdown has " + "been disabled for this instance\"," + " \"data\":{\"name\":\"guest-shutdown\"}" + " }" + "}") < 0) + goto cleanup; + + if (qemuAgentShutdown(qemuMonitorTestGetAgent(test), + QEMU_AGENT_SHUTDOWN_REBOOT) != -1) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + "agent shutdown command should have failed"); + goto cleanup; + } + ret = 0; cleanup: