From 328b8dbe8bee9939c7108fdec4fda05fd02511f6 Mon Sep 17 00:00:00 2001 From: Pavel Hrdina Date: Thu, 1 Mar 2018 15:25:05 +0100 Subject: [PATCH] tests: introduce qemucapsfixreplies helper Sometimes we don't regenerate QEMU capabilities replies using QEMU binary but we simply add a new entry manually. In that case you need to manually fix all the replies ids. This helper will do that for you. Reviewed-by: Andrea Bolognani Signed-off-by: Pavel Hrdina --- tests/qemucapabilitiestest.c | 3 +++ tests/qemucapsfixreplies | 22 ++++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100755 tests/qemucapsfixreplies diff --git a/tests/qemucapabilitiestest.c b/tests/qemucapabilitiestest.c index 87807b4135..acfa1106e4 100644 --- a/tests/qemucapabilitiestest.c +++ b/tests/qemucapabilitiestest.c @@ -192,6 +192,9 @@ mymain(void) /* * Run "tests/qemucapsprobe /path/to/qemu/binary >foo.replies" * to generate updated or new *.replies data files. + * + * If you manually edit replies files you can run + * "tests/qemucapsfixreplies foo.replies" to fix the replies ids. */ qemuTestDriverFree(&driver); diff --git a/tests/qemucapsfixreplies b/tests/qemucapsfixreplies new file mode 100755 index 0000000000..4e3371a1f7 --- /dev/null +++ b/tests/qemucapsfixreplies @@ -0,0 +1,22 @@ +#!/bin/sh + +if [ "$#" -ne 1 ] || [ "$1" = "--help" ] || [ ! -f "$1" ]; then + echo "This script fixes replies ids in QEMU replies files." + echo "" + echo " Usage: $0 path/to/qemu.replies" + exit 0 +fi + +awk -i inplace \ + 'BEGIN {count=1; pattern="libvirt-[0-9]+"} + { + if (match($0, "libvirt-1[^0-9]")) { + count=1; + } + if (match($0, pattern)) { + str="libvirt-" count; + sub(pattern, str, $0); + count++; + } + print + }' "$1" -- GitLab