[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 10/13] qcow2_format.py: QcowHeaderExtension: add dump method
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[PATCH v5 10/13] qcow2_format.py: QcowHeaderExtension: add dump method |
Date: |
Sat, 6 Jun 2020 11:18:03 +0300 |
Obviously, for-loop body in dump_extensions should be the dump method
of extension.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com>
---
tests/qemu-iotests/qcow2_format.py | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/tests/qemu-iotests/qcow2_format.py
b/tests/qemu-iotests/qcow2_format.py
index 74a82f9263..d4ad5431b2 100644
--- a/tests/qemu-iotests/qcow2_format.py
+++ b/tests/qemu-iotests/qcow2_format.py
@@ -108,6 +108,17 @@ class QcowHeaderExtension:
self.length = length
self.data = data
+ def dump(self):
+ data = self.data[:self.length]
+ if all(c in string.printable.encode('ascii') for c in data):
+ data = f"'{ data.decode('ascii') }'"
+ else:
+ data = '<binary>'
+
+ print(f'{"magic":<25} {self.magic:#x}')
+ print(f'{"length":<25} {self.length}')
+ print(f'{"data":<25} {data}')
+
@classmethod
def create(cls, magic, data):
return QcowHeaderExtension(magic, len(data), data)
@@ -210,15 +221,6 @@ class QcowHeader(Qcow2Struct):
def dump_extensions(self):
for ex in self.extensions:
-
- data = ex.data[:ex.length]
- if all(c in string.printable.encode('ascii') for c in data):
- data = f"'{ data.decode('ascii') }'"
- else:
- data = '<binary>'
-
print('Header extension:')
- print(f'{"magic":<25} {ex.magic:#x}')
- print(f'{"length":<25} {ex.length}')
- print(f'{"data":<25} {data}')
+ ex.dump()
print()
--
2.21.0
- Re: [PATCH v5 02/13] qcow2.py: add licensing blurb, (continued)
- [PATCH v5 06/13] qcow2_format.py: use modern string formatting, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 05/13] qcow2_format.py: use tuples instead of lists for fields, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 09/13] qcow2_format.py: add field-formatting class, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 03/13] qcow2.py: move qcow2 format classes to separate module, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 04/13] qcow2_format.py: drop new line printing at end of dump(), Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 08/13] qcow2_format.py: separate generic functionality of structure classes, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 07/13] qcow2_format.py: use strings to specify c-type of struct fields, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 10/13] qcow2_format.py: QcowHeaderExtension: add dump method,
Vladimir Sementsov-Ogievskiy <=
- [PATCH v5 12/13] qcow2: QcowHeaderExtension print names for extension magics, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 11/13] qcow2_format: refactor QcowHeaderExtension as a subclass of Qcow2Struct, Vladimir Sementsov-Ogievskiy, 2020/06/06
- [PATCH v5 13/13] qcow2_format.py: dump bitmaps header extension, Vladimir Sementsov-Ogievskiy, 2020/06/06