mirror of
https://github.com/xemu-project/xemu.git
synced 2024-12-18 17:28:38 +00:00
2d2fd67428
Testing success paths is important, but it's also nice to highlight expected failure handling, to show that we don't crash, and so that upcoming tests that change behavior can demonstrate the resulting effects on error paths. Add the following errors: Attempting to export without a running server Attempting to start a second server Attempting to export a bad node name Attempting to export a name that is already exported Attempting to export an enabled bitmap Attempting to remove an already removed export Attempting to quit server a second time All of these properly complain except for a second server-stop, which will be fixed next. Signed-off-by: Eric Blake <eblake@redhat.com> Message-Id: <20190111194720.15671-2-eblake@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
75 lines
2.7 KiB
Plaintext
75 lines
2.7 KiB
Plaintext
QA output created by 223
|
|
|
|
=== Create partially sparse image, then add dirty bitmaps ===
|
|
|
|
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=4194304
|
|
wrote 2097152/2097152 bytes at offset 1048576
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Testing:
|
|
QMP_VERSION
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
|
|
|
|
|
|
=== Write part of the file under active bitmap ===
|
|
|
|
wrote 512/512 bytes at offset 512
|
|
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 2097152/2097152 bytes at offset 2097152
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== End dirty bitmaps, and start serving image over NBD ===
|
|
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"error": {"class": "GenericError", "desc": "NBD server not running"}}
|
|
{"return": {}}
|
|
{"error": {"class": "GenericError", "desc": "NBD server already running"}}
|
|
{"return": {}}
|
|
{"error": {"class": "GenericError", "desc": "Cannot find device=nosuch nor node_name=nosuch"}}
|
|
{"error": {"class": "GenericError", "desc": "NBD server already has export named 'n'"}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"error": {"class": "GenericError", "desc": "Bitmap 'b2' is enabled"}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
|
|
=== Contrast normal status to large granularity dirty-bitmap ===
|
|
|
|
read 512/512 bytes at offset 512
|
|
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
read 524288/524288 bytes at offset 524288
|
|
512 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
read 2097152/2097152 bytes at offset 2097152
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
[{ "start": 0, "length": 4096, "depth": 0, "zero": false, "data": true},
|
|
{ "start": 4096, "length": 1044480, "depth": 0, "zero": true, "data": false},
|
|
{ "start": 1048576, "length": 3145728, "depth": 0, "zero": false, "data": true}]
|
|
[{ "start": 0, "length": 65536, "depth": 0, "zero": false, "data": false},
|
|
{ "start": 65536, "length": 2031616, "depth": 0, "zero": false, "data": true},
|
|
{ "start": 2097152, "length": 2097152, "depth": 0, "zero": false, "data": false}]
|
|
|
|
=== Contrast to small granularity dirty-bitmap ===
|
|
|
|
[{ "start": 0, "length": 512, "depth": 0, "zero": false, "data": true},
|
|
{ "start": 512, "length": 512, "depth": 0, "zero": false, "data": false},
|
|
{ "start": 1024, "length": 2096128, "depth": 0, "zero": false, "data": true},
|
|
{ "start": 2097152, "length": 2097152, "depth": 0, "zero": false, "data": false}]
|
|
|
|
=== End NBD server ===
|
|
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"error": {"class": "GenericError", "desc": "Export 'n2' is not found"}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
{"return": {}}
|
|
*** done
|