From 199cd7a37e15547b48a6a971685cf997ff519405 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Wed, 29 Apr 2020 19:41:38 +0200 Subject: [PATCH] qemumonitorjsontest: Add infrastructure for generated tests of deprecated commands MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For sanity-chcecking of deprecated commands which are still used on some old code paths which used the simple generated test cases add a mechanism to mark them as deprecated so schema checking can be skipped. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- tests/qemumonitorjsontest.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c index fce88083b9..33bad45b96 100644 --- a/tests/qemumonitorjsontest.c +++ b/tests/qemumonitorjsontest.c @@ -46,6 +46,8 @@ struct _testQemuMonitorJSONSimpleFuncData { virDomainXMLOptionPtr xmlopt; const char *reply; virHashTablePtr schema; + bool allowDeprecated; + bool allowRemoved; }; typedef struct _testGenericData testGenericData; @@ -1278,6 +1280,9 @@ testQemuMonitorJSON ## funcName(const void *opaque) \ \ if (!(test = qemuMonitorTestNewSchema(xmlopt, data->schema))) \ return -1; \ + \ + if (data->allowDeprecated) \ + qemuMonitorTestSkipDeprecatedValidation(test, data->allowRemoved); \ \ if (!reply) \ reply = "{\"return\":{}}"; \ @@ -3121,13 +3126,19 @@ mymain(void) if (virTestRun(# FNC, testQemuMonitorJSONSimpleFunc, &simpleFunc) < 0) \ ret = -1 -#define DO_TEST_GEN(name, ...) \ +#define DO_TEST_GEN_FULL(name, dpr, rmvd, ...) \ simpleFunc = (testQemuMonitorJSONSimpleFuncData) {.xmlopt = driver.xmlopt, \ + .allowDeprecated = dpr, \ + .allowRemoved = rmvd, \ .schema = qapiData.schema \ __VA_ARGS__ }; \ if (virTestRun(# name, testQemuMonitorJSON ## name, &simpleFunc) < 0) \ ret = -1 +#define DO_TEST_GEN(name, ...) DO_TEST_GEN_FULL(name, false, false, __VA_ARGS__) +#define DO_TEST_GEN_DEPRECATED(name, removed, ...) \ + DO_TEST_GEN_FULL(name, true, removed, __VA_ARGS__) + #define DO_TEST_CPU_DATA(name) \ do { \ struct testCPUData data = { name, driver.xmlopt, qapiData.schema }; \ -- GitLab