aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2019-07-23 21:22:39 +0200
committerThomas Huth <thuth@redhat.com>2019-08-15 19:24:10 +0200
commit6fc9f3d347aee337421f8afc4d0984294f8ea6c3 (patch)
treecc551dfcc927f02a95c9666d26c87caeded1c4f0 /tests
parente5758de4e836c3b2edc2befd904651fc6967d74f (diff)
downloadqemu-6fc9f3d347aee337421f8afc4d0984294f8ea6c3.zip
qemu-6fc9f3d347aee337421f8afc4d0984294f8ea6c3.tar.gz
qemu-6fc9f3d347aee337421f8afc4d0984294f8ea6c3.tar.bz2
tests/libqtest: Make qmp_assert_success() independent from global_qtest
The normal libqtest library functions should never depend on global_qtest. Pass in the test state via parameter instead. And while we're at it, also rename this function to qtest_qmp_assert_success() to make it clear that it is part of libqtest. Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20190813093047.27948-7-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/libqtest.c4
-rw-r--r--tests/libqtest.h6
-rw-r--r--tests/virtio-scsi-test.c10
3 files changed, 12 insertions, 8 deletions
diff --git a/tests/libqtest.c b/tests/libqtest.c
index 19c1fc2..eb971d0 100644
--- a/tests/libqtest.c
+++ b/tests/libqtest.c
@@ -1111,13 +1111,13 @@ QDict *qmp(const char *fmt, ...)
return response;
}
-void qmp_assert_success(const char *fmt, ...)
+void qtest_qmp_assert_success(QTestState *qts, const char *fmt, ...)
{
va_list ap;
QDict *response;
va_start(ap, fmt);
- response = qtest_vqmp(global_qtest, fmt, ap);
+ response = qtest_vqmp(qts, fmt, ap);
va_end(ap);
g_assert(response);
diff --git a/tests/libqtest.h b/tests/libqtest.h
index d93144f..7833148 100644
--- a/tests/libqtest.h
+++ b/tests/libqtest.h
@@ -666,7 +666,8 @@ static inline void qtest_end(void)
QDict *qmp(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
/**
- * qmp_assert_success:
+ * qtest_qmp_assert_success:
+ * @qts: QTestState instance to operate on
* @fmt...: QMP message to send to qemu, formatted like
* qobject_from_jsonf_nofail(). See parse_escape() for what's
* supported after '%'.
@@ -674,7 +675,8 @@ QDict *qmp(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
* Sends a QMP message to QEMU and asserts that a 'return' key is present in
* the response.
*/
-void qmp_assert_success(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
+void qtest_qmp_assert_success(QTestState *qts, const char *fmt, ...)
+ GCC_FMT_ATTR(2, 3);
/*
* qmp_eventwait:
diff --git a/tests/virtio-scsi-test.c b/tests/virtio-scsi-test.c
index 1648149..0934876 100644
--- a/tests/virtio-scsi-test.c
+++ b/tests/virtio-scsi-test.c
@@ -225,10 +225,12 @@ static void test_iothread_attach_node(void *obj, void *data,
mkqcow2(tmp_path, 64);
/* Attach the overlay to the null0 node */
- qmp_assert_success("{'execute': 'blockdev-add', 'arguments': {"
- " 'driver': 'qcow2', 'node-name': 'overlay',"
- " 'backing': 'null0', 'file': {"
- " 'driver': 'file', 'filename': %s}}}", tmp_path);
+ qtest_qmp_assert_success(scsi_pci->pci_vdev.pdev->bus->qts,
+ "{'execute': 'blockdev-add', 'arguments': {"
+ " 'driver': 'qcow2', 'node-name': 'overlay',"
+ " 'backing': 'null0', 'file': {"
+ " 'driver': 'file', 'filename': %s}}}",
+ tmp_path);
/* Send a request to see if the AioContext is still right */
ret = virtio_scsi_do_command(vs, write_cdb, NULL, 0, buf, 512, NULL);