aboutsummaryrefslogtreecommitdiff
path: root/tests/virtio-9p-test.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/virtio-9p-test.c')
-rw-r--r--tests/virtio-9p-test.c42
1 files changed, 25 insertions, 17 deletions
diff --git a/tests/virtio-9p-test.c b/tests/virtio-9p-test.c
index 1e39335a79..45fc8041d7 100644
--- a/tests/virtio-9p-test.c
+++ b/tests/virtio-9p-test.c
@@ -11,33 +11,41 @@
#include "libqtest.h"
#include "qemu-common.h"
-/* Tests only initialization so far. TODO: Replace with functional tests */
-static void pci_nop(void)
-{
-}
+static const char mount_tag[] = "qtest";
+static char *test_share;
-static char test_share[] = "/tmp/qtest.XXXXXX";
-
-int main(int argc, char **argv)
+static void qvirtio_9p_start(void)
{
char *args;
- int ret;
- g_test_init(&argc, &argv, NULL);
- qtest_add_func("/virtio/9p/pci/nop", pci_nop);
-
- g_assert(mkdtemp(test_share));
+ test_share = g_strdup("/tmp/qtest.XXXXXX");
+ g_assert_nonnull(mkdtemp(test_share));
args = g_strdup_printf("-fsdev local,id=fsdev0,security_model=none,path=%s "
- "-device virtio-9p-pci,fsdev=fsdev0,mount_tag=qtest",
- test_share);
+ "-device virtio-9p-pci,fsdev=fsdev0,mount_tag=%s",
+ test_share, mount_tag);
+
qtest_start(args);
g_free(args);
+}
- ret = g_test_run();
-
+static void qvirtio_9p_stop(void)
+{
qtest_end();
rmdir(test_share);
+ g_free(test_share);
+}
+
+static void pci_nop(void)
+{
+ qvirtio_9p_start();
+ qvirtio_9p_stop();
+}
+
+int main(int argc, char **argv)
+{
+ g_test_init(&argc, &argv, NULL);
+ qtest_add_func("/virtio/9p/pci/nop", pci_nop);
- return ret;
+ return g_test_run();
}