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 <abologna@redhat.com>
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
Pavel Hrdina 2018-03-01 15:25:05 +01:00
parent 6722a32444
commit 328b8dbe8b
2 changed files with 25 additions and 0 deletions

View File

@ -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);

22
tests/qemucapsfixreplies Executable file
View File

@ -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"