[PATCH 27/30] qemublocktest: Extract schema root for blockdev-add validation

Peter Krempa pkrempa at redhat.com
Mon Mar 9 16:23:07 UTC 2020


Move lookup of the schema root earlier so that multiple functions
can use it for validation.

Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 tests/qemublocktest.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/tests/qemublocktest.c b/tests/qemublocktest.c
index 735ba5cdde..f803c9c6b3 100644
--- a/tests/qemublocktest.c
+++ b/tests/qemublocktest.c
@@ -868,6 +868,7 @@ mymain(void)
     char *capslatest_x86_64 = NULL;
     virQEMUCapsPtr caps_x86_64 = NULL;
     g_autoptr(virHashTable) qmp_schema_x86_64 = NULL;
+    virJSONValuePtr qmp_schemaroot_x86_64_blockdev_add = NULL;
     g_autoptr(virStorageSource) bitmapSourceChain = NULL;

     if (qemuTestDriverInit(&driver) < 0)
@@ -895,6 +896,15 @@ mymain(void)
         goto cleanup;
     }

+    if (virQEMUQAPISchemaPathGet("blockdev-add/arg-type",
+                                 qmp_schema_x86_64,
+                                 &qmp_schemaroot_x86_64_blockdev_add) < 0 ||
+        !qmp_schemaroot_x86_64_blockdev_add) {
+        VIR_TEST_VERBOSE("failed to find schema entry for blockdev-add");
+        ret = -1;
+        goto cleanup;
+    }
+
     virTestCounterReset("qemu storage source xml->json->xml ");

 #define TEST_JSON_FORMAT(tpe, xmlstr) \
@@ -994,15 +1004,7 @@ mymain(void)
 #define TEST_DISK_TO_JSON(nme) TEST_DISK_TO_JSON_FULL(nme, false)

     diskxmljsondata.schema = qmp_schema_x86_64;
-
-    if (virQEMUQAPISchemaPathGet("blockdev-add/arg-type",
-                                 diskxmljsondata.schema,
-                                 &diskxmljsondata.schemaroot) < 0 ||
-        !diskxmljsondata.schemaroot) {
-        VIR_TEST_VERBOSE("failed to find schema entry for blockdev-add");
-        ret = -1;
-        goto cleanup;
-    }
+    diskxmljsondata.schemaroot = qmp_schemaroot_x86_64_blockdev_add;

     TEST_DISK_TO_JSON_FULL("nodename-long-format", true);
     TEST_DISK_TO_JSON_FULL("nodename-long-protocol", true);
-- 
2.24.1




More information about the libvir-list mailing list