Add a variant of qtest_has_machine() that receives an environment variable containing an alternate QEMU binary path.
Signed-off-by: Fabiano Rosas <faro...@suse.de> --- tests/qtest/libqtest.c | 9 +++++++-- tests/qtest/libqtest.h | 9 +++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index 47c8b6d46f..c0e4f05979 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -1522,12 +1522,12 @@ void qtest_cb_for_every_machine(void (*cb)(const char *machine), } } -bool qtest_has_machine(const char *machine) +bool qtest_has_machine_with_env(const char *var, const char *machine) { struct MachInfo *machines; int i; - machines = qtest_get_machines(NULL); + machines = qtest_get_machines(var); for (i = 0; machines[i].name != NULL; i++) { if (g_str_equal(machine, machines[i].name) || @@ -1539,6 +1539,11 @@ bool qtest_has_machine(const char *machine) return false; } +bool qtest_has_machine(const char *machine) +{ + return qtest_has_machine_with_env(NULL, machine); +} + bool qtest_has_device(const char *device) { static QList *list; diff --git a/tests/qtest/libqtest.h b/tests/qtest/libqtest.h index eef3a11ca4..083b2a6520 100644 --- a/tests/qtest/libqtest.h +++ b/tests/qtest/libqtest.h @@ -902,6 +902,15 @@ void qtest_cb_for_every_machine(void (*cb)(const char *machine), */ bool qtest_has_machine(const char *machine); +/** + * qtest_has_machine_with_env: + * @var: Environment variable from where to take the QEMU binary + * @machine: The machine to look for + * + * Returns: true if the machine is available in the specified binary. + */ +bool qtest_has_machine_with_env(const char *var, const char *machine); + /** * qtest_has_device: * @device: The device to look for -- 2.35.3