diff mbox

[23/36] qtest: Avoid dynamic JSON in virtio-blk-test

Message ID 1480535094-23831-24-git-send-email-eblake@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Eric Blake Nov. 30, 2016, 7:44 p.m. UTC
As argued elsewhere, it's less code to maintain if we convert
from a dynamic string passed to qobject_from_jsonv() to instead
use a hand-built QDict.

Signed-off-by: Eric Blake <eblake@redhat.com>
---
 tests/virtio-blk-test.c | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)
diff mbox

Patch

diff --git a/tests/virtio-blk-test.c b/tests/virtio-blk-test.c
index 0e32e41..57780aa 100644
--- a/tests/virtio-blk-test.c
+++ b/tests/virtio-blk-test.c
@@ -16,6 +16,9 @@ 
 #include "libqos/virtio-pci.h"
 #include "libqos/virtio-mmio.h"
 #include "libqos/malloc-generic.h"
+#include "qapi/qmp/qdict.h"
+#include "qapi/qmp/qint.h"
+#include "qapi/qmp/qstring.h"
 #include "qemu/bswap.h"
 #include "standard-headers/linux/virtio_ids.h"
 #include "standard-headers/linux/virtio_config.h"
@@ -399,6 +402,7 @@  static void pci_config(void)
     QOSState *qs;
     int n_size = TEST_IMAGE_SIZE / 2;
     uint64_t capacity;
+    QDict *args = qdict_new();

     qs = pci_test_start();

@@ -409,8 +413,10 @@  static void pci_config(void)

     qvirtio_set_driver_ok(&dev->vdev);

-    qmp("{ 'execute': 'block_resize', 'arguments': { 'device': 'drive0', "
-                                                    " 'size': %d } }", n_size);
+    qdict_put_str(args, "device", "drive0");
+    qdict_put_int(args, "size", n_size);
+    qmp_cmd("block_resize", args);
+
     qvirtio_wait_config_isr(&dev->vdev, QVIRTIO_BLK_TIMEOUT_US);

     capacity = qvirtio_config_readq(&dev->vdev, 0);
@@ -435,6 +441,7 @@  static void pci_msix(void)
     uint32_t free_head;
     uint8_t status;
     char *data;
+    QDict *args = qdict_new();

     qs = pci_test_start();

@@ -458,8 +465,9 @@  static void pci_msix(void)

     qvirtio_set_driver_ok(&dev->vdev);

-    qmp("{ 'execute': 'block_resize', 'arguments': { 'device': 'drive0', "
-                                                    " 'size': %d } }", n_size);
+    qdict_put_str(args, "device", "drive0");
+    qdict_put_int(args, "size", n_size);
+    qmp_cmd("block_resize", args);

     qvirtio_wait_config_isr(&dev->vdev, QVIRTIO_BLK_TIMEOUT_US);

@@ -675,6 +683,7 @@  static void mmio_basic(void)
     QGuestAllocator *alloc;
     int n_size = TEST_IMAGE_SIZE / 2;
     uint64_t capacity;
+    QDict *args = qdict_new();

     arm_test_start();

@@ -691,8 +700,9 @@  static void mmio_basic(void)

     test_basic(&dev->vdev, alloc, vq);

-    qmp("{ 'execute': 'block_resize', 'arguments': { 'device': 'drive0', "
-                                                    " 'size': %d } }", n_size);
+    qdict_put_str(args, "device", "drive0");
+    qdict_put_int(args, "size", n_size);
+    qmp_cmd("block_resize", args);

     qvirtio_wait_queue_isr(&dev->vdev, vq, QVIRTIO_BLK_TIMEOUT_US);