diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 10f1138bca..d44548f795 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -332,28 +332,32 @@ int qemuTestCapsCacheInsert(virFileCachePtr cache, } else { tmpCaps = virQEMUCapsNew(); } - virQEMUCapsSetArch(tmpCaps, i); - for (j = 0; qemu_machines[i][j] != NULL; j++) { - virQEMUCapsAddMachine(tmpCaps, - VIR_DOMAIN_VIRT_QEMU, - qemu_machines[i][j], - NULL, - NULL, - 0, - false, - false); - } - for (j = 0; kvm_machines[i][j] != NULL; j++) { - virQEMUCapsAddMachine(tmpCaps, - VIR_DOMAIN_VIRT_KVM, - kvm_machines[i][j], - NULL, - NULL, - 0, - false, - false); - virQEMUCapsSet(tmpCaps, QEMU_CAPS_KVM); + + if (!virQEMUCapsHasMachines(tmpCaps)) { + virQEMUCapsSetArch(tmpCaps, i); + for (j = 0; qemu_machines[i][j] != NULL; j++) { + virQEMUCapsAddMachine(tmpCaps, + VIR_DOMAIN_VIRT_QEMU, + qemu_machines[i][j], + NULL, + NULL, + 0, + false, + false); + } + for (j = 0; kvm_machines[i][j] != NULL; j++) { + virQEMUCapsAddMachine(tmpCaps, + VIR_DOMAIN_VIRT_KVM, + kvm_machines[i][j], + NULL, + NULL, + 0, + false, + false); + virQEMUCapsSet(tmpCaps, QEMU_CAPS_KVM); + } } + if (virFileCacheInsertData(cache, qemu_emulators[i], tmpCaps) < 0) { virObjectUnref(tmpCaps); return -1;