diff mbox series

[v1,1/5] tests/qtest: Add a helper to query the QEMU version

Message ID 20231207155809.25673-2-farosas@suse.de
State New
Headers show
Series migration & CI: Add a CI job for migration compat testing | expand

Commit Message

Fabiano Rosas Dec. 7, 2023, 3:58 p.m. UTC
Signed-off-by: Fabiano Rosas <farosas@suse.de>
---
 tests/qtest/libqtest.c | 24 ++++++++++++++++++++++++
 tests/qtest/libqtest.h | 10 ++++++++++
 2 files changed, 34 insertions(+)

Comments

Thomas Huth Dec. 19, 2023, 2:32 p.m. UTC | #1
On 07/12/2023 16.58, Fabiano Rosas wrote:
> Signed-off-by: Fabiano Rosas <farosas@suse.de>
> ---
>   tests/qtest/libqtest.c | 24 ++++++++++++++++++++++++
>   tests/qtest/libqtest.h | 10 ++++++++++
>   2 files changed, 34 insertions(+)
> 
> diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
> index f33a210861..7cee68a834 100644
> --- a/tests/qtest/libqtest.c
> +++ b/tests/qtest/libqtest.c
> @@ -337,6 +337,30 @@ void qtest_remove_abrt_handler(void *data)
>       }
>   }
>   
> +void qtest_query_version(QTestState *who, int *major, int *minor, int *micro)

I'd prefer "qts" instead of "who" ... but that's bikeshedding, so:

Reviewed-by: Thomas Huth <thuth@redhat.com>
Fabiano Rosas Dec. 19, 2023, 4:59 p.m. UTC | #2
Thomas Huth <thuth@redhat.com> writes:

> On 07/12/2023 16.58, Fabiano Rosas wrote:
>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>> ---
>>   tests/qtest/libqtest.c | 24 ++++++++++++++++++++++++
>>   tests/qtest/libqtest.h | 10 ++++++++++
>>   2 files changed, 34 insertions(+)
>> 
>> diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
>> index f33a210861..7cee68a834 100644
>> --- a/tests/qtest/libqtest.c
>> +++ b/tests/qtest/libqtest.c
>> @@ -337,6 +337,30 @@ void qtest_remove_abrt_handler(void *data)
>>       }
>>   }
>>   
>> +void qtest_query_version(QTestState *who, int *major, int *minor, int *micro)
>
> I'd prefer "qts" instead of "who" ... but that's bikeshedding, so:

I'll change it. I need to send another version of this series anyway.
diff mbox series

Patch

diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
index f33a210861..7cee68a834 100644
--- a/tests/qtest/libqtest.c
+++ b/tests/qtest/libqtest.c
@@ -337,6 +337,30 @@  void qtest_remove_abrt_handler(void *data)
     }
 }
 
+void qtest_query_version(QTestState *who, int *major, int *minor, int *micro)
+{
+    QDict *rsp, *version;
+
+    rsp = qtest_qmp_assert_success_ref(who, "{ 'execute': 'query-version' }");
+    g_assert(rsp);
+
+    version = qdict_get_qdict(rsp, "qemu");
+
+    if (major) {
+        *major = qdict_get_int(version, "major");
+    }
+
+    if (minor) {
+        *minor = qdict_get_int(version, "minor");
+    }
+
+    if (micro) {
+        *micro = qdict_get_int(version, "micro");
+    }
+
+    qobject_unref(rsp);
+}
+
 static const char *qtest_qemu_binary(const char *var)
 {
     const char *qemu_bin;
diff --git a/tests/qtest/libqtest.h b/tests/qtest/libqtest.h
index 6e3d3525bf..db7a780d26 100644
--- a/tests/qtest/libqtest.h
+++ b/tests/qtest/libqtest.h
@@ -1085,4 +1085,14 @@  bool have_qemu_img(void);
  */
 bool mkimg(const char *file, const char *fmt, unsigned size_mb);
 
+/**
+ * qtest_query_version:
+ * @who: QTestState instance to operate on
+ * @major: Pointer to where to store the major version number
+ * @minor: Pointer to where to store the minor version number
+ * @micro: Pointer to where to store the micro version number
+ *
+ */
+void qtest_query_version(QTestState *who, int *major, int *minor, int *micro);
+
 #endif