]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
tests: nodedev: remove 'create' from test macros
authorJonathon Jongsma <jjongsma@redhat.com>
Fri, 9 Apr 2021 20:30:01 +0000 (15:30 -0500)
committerJonathon Jongsma <jjongsma@redhat.com>
Mon, 19 Apr 2021 15:24:13 +0000 (10:24 -0500)
We can figure out the appropriate value for 'create' from the command
type, so push that into the test function rather than specifying it in
the test macro.

Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
Reviewed-by: Erik Skultety <eskultet@redhat.com>
tests/nodedevmdevctltest.c

index bba521e563892702e2390bfaf42c138c4bf42c00..6009ba739898cea230debc6fd0410ce2a8b011f1 100644 (file)
@@ -12,7 +12,6 @@
 
 struct TestInfo {
     const char *virt_type;
-    int create;
     const char *filename;
     virMdevctlCommand command;
 };
@@ -37,7 +36,6 @@ typedef virCommand * (*MdevctlCmdFunc)(virNodeDeviceDef *, char **, char **);
 
 static int
 testMdevctlCmd(const char *virt_type,
-               int create,
                virMdevctlCommand cmd_type,
                const char *mdevxml,
                const char *cmdfile,
@@ -53,6 +51,22 @@ testMdevctlCmd(const char *virt_type,
     g_autofree char *stdinbuf = NULL;
     g_autoptr(virCommand) cmd = NULL;
     g_autoptr(virCommandDryRunToken) dryRunToken = virCommandDryRunTokenNew();
+    int create;
+
+    switch (cmd_type) {
+        case MDEVCTL_CMD_CREATE:
+        case MDEVCTL_CMD_DEFINE:
+            create = CREATE_DEVICE;
+            break;
+        case MDEVCTL_CMD_START:
+        case MDEVCTL_CMD_STOP:
+        case MDEVCTL_CMD_UNDEFINE:
+            create = EXISTING_DEVICE;
+            break;
+        case MDEVCTL_CMD_LAST:
+        default:
+            goto cleanup;
+    }
 
     if (!(def = virNodeDeviceDefParseFile(mdevxml, create, virt_type)))
         goto cleanup;
@@ -106,8 +120,8 @@ testMdevctlHelper(const void *data)
     jsonfile = g_strdup_printf("%s/nodedevmdevctldata/%s-%s.json", abs_srcdir,
                                info->filename, cmd);
 
-    return testMdevctlCmd(info->virt_type, info->create, info->command,
-                          mdevxml, cmdlinefile, jsonfile);
+    return testMdevctlCmd(info->virt_type, info->command, mdevxml,
+                          cmdlinefile, jsonfile);
 }
 
 
@@ -316,27 +330,27 @@ mymain(void)
     if (virTestRun(desc, func, info) < 0) \
         ret = -1;
 
-#define DO_TEST_CMD(desc, virt_type, create, filename, command) \
+#define DO_TEST_CMD(desc, virt_type, filename, command) \
     do { \
-        struct TestInfo info = { virt_type, create, filename, command }; \
+        struct TestInfo info = { virt_type, filename, command }; \
         DO_TEST_FULL(desc, testMdevctlHelper, &info); \
        } \
     while (0)
 
 #define DO_TEST_CREATE(filename) \
-    DO_TEST_CMD("create mdev " filename, "QEMU", CREATE_DEVICE, filename, MDEVCTL_CMD_CREATE)
+    DO_TEST_CMD("create mdev " filename, "QEMU", filename, MDEVCTL_CMD_CREATE)
 
 #define DO_TEST_DEFINE(filename) \
-    DO_TEST_CMD("define mdev " filename, "QEMU", CREATE_DEVICE, filename, MDEVCTL_CMD_DEFINE)
+    DO_TEST_CMD("define mdev " filename, "QEMU", filename, MDEVCTL_CMD_DEFINE)
 
 #define DO_TEST_STOP(filename) \
-    DO_TEST_CMD("stop mdev " filename, "QEMU", EXISTING_DEVICE, filename, MDEVCTL_CMD_STOP)
+    DO_TEST_CMD("stop mdev " filename, "QEMU", filename, MDEVCTL_CMD_STOP)
 
 #define DO_TEST_UNDEFINE(filename) \
-    DO_TEST_CMD("undefine mdev" filename, "QEMU", EXISTING_DEVICE, filename, MDEVCTL_CMD_UNDEFINE)
+    DO_TEST_CMD("undefine mdev" filename, "QEMU", filename, MDEVCTL_CMD_UNDEFINE)
 
 #define DO_TEST_START(filename) \
-    DO_TEST_CMD("start mdev " filename, "QEMU", EXISTING_DEVICE, filename, MDEVCTL_CMD_START)
+    DO_TEST_CMD("start mdev " filename, "QEMU", filename, MDEVCTL_CMD_START)
 
 #define DO_TEST_LIST_DEFINED() \
     DO_TEST_FULL("list defined mdevs", testMdevctlListDefined, NULL)