Skip to content

Commit

Permalink
iotests: Add filter_qtest()
Browse files Browse the repository at this point in the history
The open-coded form of this filter has been copied into enough tests
that it's better to move it into iotests.py.

Signed-off-by: Kevin Wolf <[email protected]>
Acked-by: Fabiano Rosas <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Stefan Hajnoczi <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>
  • Loading branch information
kevmw committed Feb 6, 2025
1 parent 2e73a17 commit ed26db8
Show file tree
Hide file tree
Showing 5 changed files with 10 additions and 12 deletions.
4 changes: 1 addition & 3 deletions tests/qemu-iotests/041
Original file line number Diff line number Diff line change
Expand Up @@ -1100,10 +1100,8 @@ class TestRepairQuorum(iotests.QMPTestCase):

# Check the full error message now
self.vm.shutdown()
log = self.vm.get_log()
log = re.sub(r'^\[I \d+\.\d+\] OPENED\n', '', log)
log = iotests.filter_qtest(self.vm.get_log())
log = re.sub(r'^Formatting.*\n', '', log)
log = re.sub(r'\n\[I \+\d+\.\d+\] CLOSED\n?$', '', log)
log = re.sub(r'^%s: ' % os.path.basename(iotests.qemu_prog), '', log)

self.assertEqual(log,
Expand Down
4 changes: 1 addition & 3 deletions tests/qemu-iotests/165
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,7 @@ class TestPersistentDirtyBitmap(iotests.QMPTestCase):
self.vm.shutdown()

#catch 'Persistent bitmaps are lost' possible error
log = self.vm.get_log()
log = re.sub(r'^\[I \d+\.\d+\] OPENED\n', '', log)
log = re.sub(r'\[I \+\d+\.\d+\] CLOSED\n?$', '', log)
log = iotests.filter_qtest(self.vm.get_log())
if log:
print(log)

Expand Down
4 changes: 4 additions & 0 deletions tests/qemu-iotests/iotests.py
Original file line number Diff line number Diff line change
Expand Up @@ -701,6 +701,10 @@ def _filter(_key, value):
def filter_nbd_exports(output: str) -> str:
return re.sub(r'((min|opt|max) block): [0-9]+', r'\1: XXX', output)

def filter_qtest(output: str) -> str:
output = re.sub(r'^\[I \d+\.\d+\] OPENED\n', '', output)
output = re.sub(r'\n?\[I \+\d+\.\d+\] CLOSED\n?$', '', output)
return output

Msg = TypeVar('Msg', Dict[str, Any], List[Any], str)

Expand Down
3 changes: 1 addition & 2 deletions tests/qemu-iotests/tests/copy-before-write
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,7 @@ class TestCbwError(iotests.QMPTestCase):

self.vm.shutdown()
log = self.vm.get_log()
log = re.sub(r'^\[I \d+\.\d+\] OPENED\n', '', log)
log = re.sub(r'\[I \+\d+\.\d+\] CLOSED\n?$', '', log)
log = iotests.filter_qtest(log)
log = iotests.filter_qemu_io(log)
return log

Expand Down
7 changes: 3 additions & 4 deletions tests/qemu-iotests/tests/migrate-bitmaps-test
Original file line number Diff line number Diff line change
Expand Up @@ -122,11 +122,10 @@ class TestDirtyBitmapMigration(iotests.QMPTestCase):

# catch 'Could not reopen qcow2 layer: Bitmap already exists'
# possible error
log = self.vm_a.get_log()
log = re.sub(r'^\[I \d+\.\d+\] OPENED\n', '', log)
log = re.sub(r'^(wrote .* bytes at offset .*\n.*KiB.*ops.*sec.*\n){3}',
log = iotests.filter_qtest(self.vm_a.get_log())
log = re.sub(r'^(wrote .* bytes at offset .*\n'
r'.*KiB.*ops.*sec.*\n?){3}',
'', log)
log = re.sub(r'\[I \+\d+\.\d+\] CLOSED\n?$', '', log)
self.assertEqual(log, '')

# test that bitmap is still persistent
Expand Down

0 comments on commit ed26db8

Please sign in to comment.