[libvirt] [PATCH 06/11] test: Rework qemuMonitorJSONGetMigrationParams test

Jiri Denemark jdenemar at redhat.com
Tue Jun 21 11:47:12 UTC 2016


Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 tests/qemumonitorjsontest.c | 44 +++++++++++++++++++-------------------------
 1 file changed, 19 insertions(+), 25 deletions(-)

diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c
index d0b5d9e..a0079dd 100644
--- a/tests/qemumonitorjsontest.c
+++ b/tests/qemumonitorjsontest.c
@@ -1641,32 +1641,26 @@ testQemuMonitorJSONqemuMonitorJSONGetMigrationParams(const void *data)
                                           &params) < 0)
         goto cleanup;
 
-    if (!params.compressLevel_set ||
-        !params.compressThreads_set ||
-        !params.decompressThreads_set) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       "One of level, threads or dthreads flags is not set");
-        return -1;
-    }
+#define CHECK(VAR, FIELD, VALUE)                                            \
+    do {                                                                    \
+        if (!params.VAR ## _set) {                                          \
+            virReportError(VIR_ERR_INTERNAL_ERROR, "%s is not set", FIELD); \
+            goto cleanup;                                                   \
+        }                                                                   \
+        if (params.VAR != VALUE) {                                          \
+            virReportError(VIR_ERR_INTERNAL_ERROR,                          \
+                           "Invalid %s: %d, expected %d",                   \
+                           FIELD, params.VAR, VALUE);                       \
+            goto cleanup;                                                   \
+        }                                                                   \
+    } while (0)
+
+    CHECK(compressLevel, "compress-level", 1);
+    CHECK(compressThreads, "compress-threads", 8);
+    CHECK(decompressThreads, "decompress-threads", 2);
+
+#undef CHECK
 
-    if (params.compressLevel != 1) {
-        virReportError(VIR_ERR_INTERNAL_ERROR,
-                       "Invalid decompress-threads: %d, expected 1",
-                       params.compressLevel);
-        goto cleanup;
-    }
-    if (params.compressThreads != 8) {
-        virReportError(VIR_ERR_INTERNAL_ERROR,
-                       "Invalid decompress-threads: %d, expected 8",
-                       params.compressThreads);
-        goto cleanup;
-    }
-    if (params.decompressThreads != 2) {
-        virReportError(VIR_ERR_INTERNAL_ERROR,
-                       "Invalid decompress-threads: %d, expected 2",
-                       params.decompressThreads);
-        goto cleanup;
-    }
     ret = 0;
 
  cleanup:
-- 
2.9.0




More information about the libvir-list mailing list