summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorMichael Roth <mdroth@linux.vnet.ibm.com>2015-10-20 11:17:36 -0500
committerMichael Roth <mdroth@linux.vnet.ibm.com>2015-10-23 08:57:45 -0500
commitb3e9e584fcef49be8ca0c355d11030f0bf6231b0 (patch)
tree1a9c88f0ec27fc95017cda04e701c8016f1a0b08
parent147482ae35b896808af68c0051ad86d3aae12979 (diff)
downloadfocaccia-qemu-b3e9e584fcef49be8ca0c355d11030f0bf6231b0.tar.gz
focaccia-qemu-b3e9e584fcef49be8ca0c355d11030f0bf6231b0.zip
tests: test-qga, loosen assumptions about host filesystems
QGA skips pseudo-filesystems when querying filesystems via
guest-get-fsinfo. On some hosts, such as travis-ci which uses
containers with simfs filesystems, QGA might not report *any*
filesystems. Our test case assumes there would be at least one,
leading to false error messages in these situations.

Instead, sanity-check values iff we get at least one filesystem.

Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-rw-r--r--tests/test-qga.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/tests/test-qga.c b/tests/test-qga.c
index 0531c9f3bc..64738465c5 100644
--- a/tests/test-qga.c
+++ b/tests/test-qga.c
@@ -273,13 +273,15 @@ static void test_qga_get_fsinfo(gconstpointer fix)
     g_assert_nonnull(ret);
     qmp_assert_no_error(ret);
 
-    /* check there is at least a fs */
+    /* sanity-check the response if there are any filesystems */
     list = qdict_get_qlist(ret, "return");
     entry = qlist_first(list);
-    g_assert(qdict_haskey(qobject_to_qdict(entry->value), "name"));
-    g_assert(qdict_haskey(qobject_to_qdict(entry->value), "mountpoint"));
-    g_assert(qdict_haskey(qobject_to_qdict(entry->value), "type"));
-    g_assert(qdict_haskey(qobject_to_qdict(entry->value), "disk"));
+    if (entry) {
+        g_assert(qdict_haskey(qobject_to_qdict(entry->value), "name"));
+        g_assert(qdict_haskey(qobject_to_qdict(entry->value), "mountpoint"));
+        g_assert(qdict_haskey(qobject_to_qdict(entry->value), "type"));
+        g_assert(qdict_haskey(qobject_to_qdict(entry->value), "disk"));
+    }
 
     QDECREF(ret);
 }