qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eric Blake <eblake@redhat.com>
To: qemu-devel@nongnu.org
Cc: nsoffer@redhat.com, Kevin Wolf <kwolf@redhat.com>,
	qemu-block@nongnu.org, Max Reitz <mreitz@redhat.com>
Subject: [PATCH 1/2] tests: Make iotest 223 easier to edit
Date: Tue, 24 Sep 2019 09:35:21 -0500	[thread overview]
Message-ID: <20190924143522.22902-2-eblake@redhat.com> (raw)
In-Reply-To: <20190924143522.22902-1-eblake@redhat.com>

Log the QMP input to qemu, not just the QMP output.

Signed-off-by: Eric Blake <eblake@redhat.com>
---
 tests/qemu-iotests/223     | 48 +++++++++++++++++++++-----------------
 tests/qemu-iotests/223.out | 40 +++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+), 21 deletions(-)

diff --git a/tests/qemu-iotests/223 b/tests/qemu-iotests/223
index 2ba3d8124b4f..2bcf922df8c4 100755
--- a/tests/qemu-iotests/223
+++ b/tests/qemu-iotests/223
@@ -58,6 +58,12 @@ run_qemu()
                           | _filter_actual_image_size
 }

+qemu_cmd()
+{
+    echo " $1" | _filter_testdir
+    _send_qemu_cmd $QEMU_HANDLE "$@"
+}
+
 echo
 echo "=== Create partially sparse image, then add dirty bitmaps ==="
 echo
@@ -110,39 +116,39 @@ echo "=== End dirty bitmaps, and start serving image over NBD ==="
 echo

 _launch_qemu -object iothread,id=io0 2> >(_filter_nbd)
-
-# Intentionally provoke some errors as well, to check error handling
 silent=
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"qmp_capabilities"}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"blockdev-add",
+
+# Intentionally provoke some errors as well, to check error handling
+qemu_cmd '{"execute":"qmp_capabilities"}' "return"
+qemu_cmd '{"execute":"blockdev-add",
   "arguments":{"driver":"qcow2", "node-name":"n",
     "file":{"driver":"file", "filename":"'"$TEST_IMG"'"}}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"x-blockdev-set-iothread",
+qemu_cmd '{"execute":"x-blockdev-set-iothread",
   "arguments":{"node-name":"n", "iothread":"io0"}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"block-dirty-bitmap-disable",
+qemu_cmd '{"execute":"block-dirty-bitmap-disable",
   "arguments":{"node":"n", "name":"b"}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"n"}}' "error" # Attempt add without server
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-start",
+qemu_cmd '{"execute":"nbd-server-start",
   "arguments":{"addr":{"type":"unix",
     "data":{"path":"'"$TEST_DIR/nbd"'"}}}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-start",
+qemu_cmd '{"execute":"nbd-server-start",
   "arguments":{"addr":{"type":"unix",
     "data":{"path":"'"$TEST_DIR/nbd"1'"}}}}' "error" # Attempt second server
 $QEMU_NBD_PROG -L -k "$TEST_DIR/nbd"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"n", "bitmap":"b"}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"nosuch"}}' "error" # Attempt to export missing node
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"n"}}' "error" # Attempt to export same name twice
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"n", "name":"n2",
   "bitmap":"b2"}}' "error" # enabled vs. read-only
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"n", "name":"n2",
   "bitmap":"b3"}}' "error" # Missing bitmap
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-add",
+qemu_cmd '{"execute":"nbd-server-add",
   "arguments":{"device":"n", "name":"n2", "writable":true,
   "bitmap":"b2"}}' "return"
 $QEMU_NBD_PROG -L -k "$TEST_DIR/nbd"
@@ -172,15 +178,15 @@ echo
 echo "=== End qemu NBD server ==="
 echo

-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-remove",
+qemu_cmd '{"execute":"nbd-server-remove",
   "arguments":{"name":"n"}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-remove",
+qemu_cmd '{"execute":"nbd-server-remove",
   "arguments":{"name":"n2"}}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-remove",
+qemu_cmd '{"execute":"nbd-server-remove",
   "arguments":{"name":"n2"}}' "error" # Attempt duplicate clean
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-stop"}' "return"
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"nbd-server-stop"}' "error" # Again
-_send_qemu_cmd $QEMU_HANDLE '{"execute":"quit"}' "return"
+qemu_cmd '{"execute":"nbd-server-stop"}' "return"
+qemu_cmd '{"execute":"nbd-server-stop"}' "error" # Again
+qemu_cmd '{"execute":"quit"}' "return"
 wait=yes _cleanup_qemu

 echo
diff --git a/tests/qemu-iotests/223.out b/tests/qemu-iotests/223.out
index 23b34fcd202e..8895ea838cbb 100644
--- a/tests/qemu-iotests/223.out
+++ b/tests/qemu-iotests/223.out
@@ -24,19 +24,50 @@ wrote 2097152/2097152 bytes at offset 2097152

 === End dirty bitmaps, and start serving image over NBD ===

+ {"execute":"qmp_capabilities"}
 {"return": {}}
+ {"execute":"blockdev-add",
+  "arguments":{"driver":"qcow2", "node-name":"n",
+    "file":{"driver":"file", "filename":"TEST_DIR/t.qcow2"}}}
 {"return": {}}
+ {"execute":"x-blockdev-set-iothread",
+  "arguments":{"node-name":"n", "iothread":"io0"}}
 {"return": {}}
+ {"execute":"block-dirty-bitmap-disable",
+  "arguments":{"node":"n", "name":"b"}}
 {"return": {}}
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"n"}}
 {"error": {"class": "GenericError", "desc": "NBD server not running"}}
+ {"execute":"nbd-server-start",
+  "arguments":{"addr":{"type":"unix",
+    "data":{"path":"TEST_DIR/nbd"}}}}
 {"return": {}}
+ {"execute":"nbd-server-start",
+  "arguments":{"addr":{"type":"unix",
+    "data":{"path":"TEST_DIR/nbd1"}}}}
 {"error": {"class": "GenericError", "desc": "NBD server already running"}}
 exports available: 0
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"n", "bitmap":"b"}}
 {"return": {}}
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"nosuch"}}
 {"error": {"class": "GenericError", "desc": "Cannot find device=nosuch nor node_name=nosuch"}}
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"n"}}
 {"error": {"class": "GenericError", "desc": "NBD server already has export named 'n'"}}
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"n", "name":"n2",
+  "bitmap":"b2"}}
 {"error": {"class": "GenericError", "desc": "Enabled bitmap 'b2' incompatible with readonly export"}}
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"n", "name":"n2",
+  "bitmap":"b3"}}
 {"error": {"class": "GenericError", "desc": "Bitmap 'b3' is not found"}}
+ {"execute":"nbd-server-add",
+  "arguments":{"device":"n", "name":"n2", "writable":true,
+  "bitmap":"b2"}}
 {"return": {}}
 exports available: 2
  export: 'n'
@@ -84,11 +115,20 @@ read 2097152/2097152 bytes at offset 2097152

 === End qemu NBD server ===

+ {"execute":"nbd-server-remove",
+  "arguments":{"name":"n"}}
 {"return": {}}
+ {"execute":"nbd-server-remove",
+  "arguments":{"name":"n2"}}
 {"return": {}}
+ {"execute":"nbd-server-remove",
+  "arguments":{"name":"n2"}}
 {"error": {"class": "GenericError", "desc": "Export 'n2' is not found"}}
+ {"execute":"nbd-server-stop"}
 {"return": {}}
+ {"execute":"nbd-server-stop"}
 {"error": {"class": "GenericError", "desc": "NBD server not running"}}
+ {"execute":"quit"}
 {"return": {}}
 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}

-- 
2.21.0



  reply	other threads:[~2019-09-24 15:24 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-24 14:35 [PATCH 0/2] enhance iotest 223 coverage Eric Blake
2019-09-24 14:35 ` Eric Blake [this message]
2019-10-07 12:05   ` [PATCH 1/2] tests: Make iotest 223 easier to edit Max Reitz
2019-10-07 20:06     ` Eric Blake
2019-10-08  9:04       ` Max Reitz
2019-09-24 14:35 ` [PATCH 2/2] tests: More iotest 223 improvements Eric Blake
2019-10-07 12:14   ` Max Reitz
2019-09-24 19:26 ` [PATCH 0/2] enhance iotest 223 coverage Vladimir Sementsov-Ogievskiy
2019-09-24 19:51   ` Eric Blake
2019-10-07 11:44     ` Max Reitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190924143522.22902-2-eblake@redhat.com \
    --to=eblake@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=mreitz@redhat.com \
    --cc=nsoffer@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).