When dumping an object into the log, there are differences between Python 2 and 3. First, unicode strings are prefixed by 'u' in Python 2 (they are no longer in 3, because unicode strings are the default there). Second, the order of keys in dicts may differ. Third, especially long numbers are longs in Python 2 and thus get an 'L' suffix, which does not happen in Python 3. We can get around all of these differences by dumping objects (lists and dicts) in a language-independent format, namely JSON. The JSON generator even allows emitting dicts with their keys sorted alphabetically. This changes the output of all tests that use these logging functions (dict keys are ordered now, strings in dicts are now enclosed in double quotes instead of single quotes, the 'L' suffix of large integers is dropped, and "true" and "false" are now in lower case). The quote change necessitates a small change to a filter used in test 207. Suggested-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Cleber Rosa <crosa@redhat.com> Message-Id: <20181022135307.14398-10-mreitz@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
113 lines
4.3 KiB
Plaintext
113 lines
4.3 KiB
Plaintext
=== Successful image creation (defaults) ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.vdi", "size": 0}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
{"execute": "blockdev-add", "arguments": {"driver": "file", "filename": "TEST_DIR/PID-t.vdi", "node_name": "imgfile"}}
|
|
{"return": {}}
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "imgfile", "size": 134217728}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 128M (134217728 bytes)
|
|
cluster_size: 1048576
|
|
|
|
[{ "start": 0, "length": 134217728, "depth": 0, "zero": true, "data": false}]
|
|
|
|
=== Successful image creation (explicit defaults) ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.vdi", "size": 0}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": {"driver": "file", "filename": "TEST_DIR/PID-t.vdi"}, "preallocation": "off", "size": 67108864}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 64M (67108864 bytes)
|
|
cluster_size: 1048576
|
|
|
|
[{ "start": 0, "length": 67108864, "depth": 0, "zero": true, "data": false}]
|
|
|
|
=== Successful image creation (with non-default options) ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.vdi", "size": 0}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": {"driver": "file", "filename": "TEST_DIR/PID-t.vdi"}, "preallocation": "metadata", "size": 33554432}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 32M (33554432 bytes)
|
|
cluster_size: 1048576
|
|
|
|
[{ "start": 0, "length": 3072, "depth": 0, "zero": false, "data": true, "offset": 1024},
|
|
{ "start": 3072, "length": 33551360, "depth": 0, "zero": true, "data": true, "offset": 4096}]
|
|
|
|
=== Invalid BlockdevRef ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "this doesn't exist", "size": 33554432}}}
|
|
{"return": {}}
|
|
Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
=== Zero size ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "node0", "size": 0}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 0 (0 bytes)
|
|
cluster_size: 1048576
|
|
|
|
=== Maximum size ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "node0", "size": 562949819203584}}}
|
|
{"return": {}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 512T (562949819203584 bytes)
|
|
cluster_size: 1048576
|
|
|
|
=== Invalid sizes ===
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "node0", "size": 18446744073709551104}}}
|
|
{"return": {}}
|
|
Job failed: Unsupported VDI image size (size is 0xfffffffffffffe00, max supported is 0x1fffff8000000)
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "node0", "size": 9223372036854775808}}}
|
|
{"return": {}}
|
|
Job failed: Unsupported VDI image size (size is 0x8000000000000000, max supported is 0x1fffff8000000)
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|
|
{"execute": "blockdev-create", "arguments": {"job_id": "job0", "options": {"driver": "vdi", "file": "node0", "size": 562949819203585}}}
|
|
{"return": {}}
|
|
Job failed: Unsupported VDI image size (size is 0x1fffff8000001, max supported is 0x1fffff8000000)
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
|