xref: /qemu/tests/qtest/modules-test.c (revision eb062cfa7331dd90837177b9a5a6becab305b1ca)
1*eb062cfaSMarc-André Lureau #include "qemu/osdep.h"
2*eb062cfaSMarc-André Lureau #include "libqtest.h"
3*eb062cfaSMarc-André Lureau 
4*eb062cfaSMarc-André Lureau static void test_modules_load(const void *data)
5*eb062cfaSMarc-André Lureau {
6*eb062cfaSMarc-André Lureau     QTestState *qts;
7*eb062cfaSMarc-André Lureau     const char **args = data;
8*eb062cfaSMarc-André Lureau 
9*eb062cfaSMarc-André Lureau     qts = qtest_init(NULL);
10*eb062cfaSMarc-André Lureau     qtest_module_load(qts, args[0], args[1]);
11*eb062cfaSMarc-André Lureau     qtest_quit(qts);
12*eb062cfaSMarc-André Lureau }
13*eb062cfaSMarc-André Lureau 
14*eb062cfaSMarc-André Lureau int main(int argc, char *argv[])
15*eb062cfaSMarc-André Lureau {
16*eb062cfaSMarc-André Lureau     const char *modules[] = {
17*eb062cfaSMarc-André Lureau #ifdef CONFIG_CURL
18*eb062cfaSMarc-André Lureau         "block-", "curl",
19*eb062cfaSMarc-André Lureau #endif
20*eb062cfaSMarc-André Lureau #ifdef CONFIG_GLUSTERFS
21*eb062cfaSMarc-André Lureau         "block-", "gluster",
22*eb062cfaSMarc-André Lureau #endif
23*eb062cfaSMarc-André Lureau #ifdef CONFIG_LIBISCSI
24*eb062cfaSMarc-André Lureau         "block-", "iscsi",
25*eb062cfaSMarc-André Lureau #endif
26*eb062cfaSMarc-André Lureau #ifdef CONFIG_LIBNFS
27*eb062cfaSMarc-André Lureau         "block-", "nfs",
28*eb062cfaSMarc-André Lureau #endif
29*eb062cfaSMarc-André Lureau #ifdef CONFIG_LIBSSH
30*eb062cfaSMarc-André Lureau         "block-", "ssh",
31*eb062cfaSMarc-André Lureau #endif
32*eb062cfaSMarc-André Lureau #ifdef CONFIG_RBD
33*eb062cfaSMarc-André Lureau         "block-", "rbd",
34*eb062cfaSMarc-André Lureau #endif
35*eb062cfaSMarc-André Lureau #ifdef CONFIG_AUDIO_ALSA
36*eb062cfaSMarc-André Lureau         "audio-", "alsa",
37*eb062cfaSMarc-André Lureau #endif
38*eb062cfaSMarc-André Lureau #ifdef CONFIG_AUDIO_OSS
39*eb062cfaSMarc-André Lureau         "audio-", "oss",
40*eb062cfaSMarc-André Lureau #endif
41*eb062cfaSMarc-André Lureau #ifdef CONFIG_AUDIO_PA
42*eb062cfaSMarc-André Lureau         "audio-", "pa",
43*eb062cfaSMarc-André Lureau #endif
44*eb062cfaSMarc-André Lureau #ifdef CONFIG_AUDIO_SDL
45*eb062cfaSMarc-André Lureau         "audio-", "sdl",
46*eb062cfaSMarc-André Lureau #endif
47*eb062cfaSMarc-André Lureau #ifdef CONFIG_CURSES
48*eb062cfaSMarc-André Lureau         "ui-", "curses",
49*eb062cfaSMarc-André Lureau #endif
50*eb062cfaSMarc-André Lureau #if defined(CONFIG_GTK) && defined(CONFIG_VTE)
51*eb062cfaSMarc-André Lureau         "ui-", "gtk",
52*eb062cfaSMarc-André Lureau #endif
53*eb062cfaSMarc-André Lureau #ifdef CONFIG_SDL
54*eb062cfaSMarc-André Lureau         "ui-", "sdl",
55*eb062cfaSMarc-André Lureau #endif
56*eb062cfaSMarc-André Lureau #if defined(CONFIG_SPICE) && defined(CONFIG_GIO)
57*eb062cfaSMarc-André Lureau         "ui-", "spice-app",
58*eb062cfaSMarc-André Lureau #endif
59*eb062cfaSMarc-André Lureau     };
60*eb062cfaSMarc-André Lureau     int i;
61*eb062cfaSMarc-André Lureau 
62*eb062cfaSMarc-André Lureau     g_test_init(&argc, &argv, NULL);
63*eb062cfaSMarc-André Lureau 
64*eb062cfaSMarc-André Lureau     for (i = 0; i < G_N_ELEMENTS(modules); i += 2) {
65*eb062cfaSMarc-André Lureau         char *testname = g_strdup_printf("/module/load/%s", modules[i + 1]);
66*eb062cfaSMarc-André Lureau         qtest_add_data_func(testname, modules + i, test_modules_load);
67*eb062cfaSMarc-André Lureau         g_free(testname);
68*eb062cfaSMarc-André Lureau     }
69*eb062cfaSMarc-André Lureau 
70*eb062cfaSMarc-André Lureau     return g_test_run();
71*eb062cfaSMarc-André Lureau }
72