提交 b949b394 编写于 作者: P Peter Krempa

tests: qemumonitorjson: Do some useful testing in the 'simple' tests

The 'simple' monitor tests were quite useless, since the code did not
even check whether the correct command was called.

This patch uses the QAPI schema validator to validate that the arguments
are in format according to the schema.
Signed-off-by: NPeter Krempa <pkrempa@redhat.com>
上级 5a96b8d7
......@@ -42,6 +42,7 @@ struct _testQemuMonitorJSONSimpleFuncData {
int (* func) (qemuMonitorPtr mon);
virDomainXMLOptionPtr xmlopt;
const char *reply;
virHashTablePtr schema;
};
const char *queryBlockReply =
......@@ -1266,7 +1267,7 @@ testQemuMonitorJSONSimpleFunc(const void *opaque)
testQemuMonitorJSONSimpleFuncDataPtr data =
(testQemuMonitorJSONSimpleFuncDataPtr) opaque;
virDomainXMLOptionPtr xmlopt = data->xmlopt;
qemuMonitorTestPtr test = qemuMonitorTestNewSimple(true, xmlopt);
qemuMonitorTestPtr test = qemuMonitorTestNewSchema(xmlopt, data->schema);
const char *reply = data->reply;
int ret = -1;
......@@ -2896,6 +2897,13 @@ mymain(void)
virEventRegisterDefaultImpl();
if (!(qapiData.schema = testQEMUSchemaLoad())) {
VIR_TEST_VERBOSE("failed to load qapi schema\n");
ret = -1;
goto cleanup;
}
simpleFunc.schema = qapiData.schema;
#define DO_TEST(name) \
if (virTestRun(# name, testQemuMonitorJSON ## name, driver.xmlopt) < 0) \
ret = -1
......@@ -3042,11 +3050,6 @@ mymain(void)
ret = -1; \
} while (0)
if (!(qapiData.schema = testQEMUSchemaLoad())) {
VIR_TEST_VERBOSE("failed to load qapi schema\n");
ret = -1;
goto cleanup;
}
DO_TEST_QAPI_SCHEMA("string", "trace-event-get-state/arg-type", true,
"{\"name\":\"test\"}");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册