iotests: add filter_qmp_generated_node_ids()

Add a filter function for QMP responses that contain QEMU's
automatically generated node ids. The ids change between runs and must
be masked in the reference output.

The next commit will use this new function.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20240118144823.1497953-2-stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
(cherry picked from commit da62b507a2)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
Stefan Hajnoczi 2024-01-18 09:48:21 -05:00 committed by Michael Tokarev
parent cf70966523
commit d7a64c4517

View File

@ -651,6 +651,13 @@ def filter_qmp_virtio_scsi(qmsg):
def filter_generated_node_ids(msg):
return re.sub("#block[0-9]+", "NODE_NAME", msg)
def filter_qmp_generated_node_ids(qmsg):
def _filter(_key, value):
if is_str(value):
return filter_generated_node_ids(value)
return value
return filter_qmp(qmsg, _filter)
def filter_img_info(output: str, filename: str,
drop_child_info: bool = True) -> str:
lines = []