tests: use static qga config file
Do not create a leaking temporary file, but use a static file instead. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reported-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
parent
fe31017f79
commit
1741b945f2
|
@ -0,0 +1,8 @@
|
||||||
|
[general]
|
||||||
|
daemon=false
|
||||||
|
method=virtio-serial
|
||||||
|
path=/path/to/org.qemu.guest_agent.0
|
||||||
|
pidfile=/var/foo/qemu-ga.pid
|
||||||
|
statedir=/var/state
|
||||||
|
verbose=true
|
||||||
|
blacklist=guest-ping;guest-get-time
|
|
@ -691,28 +691,11 @@ static void test_qga_blacklist(gconstpointer data)
|
||||||
static void test_qga_config(gconstpointer data)
|
static void test_qga_config(gconstpointer data)
|
||||||
{
|
{
|
||||||
GError *error = NULL;
|
GError *error = NULL;
|
||||||
char *cwd, *cmd, *out, *err, *str, **strv, *conf, **argv = NULL;
|
char *cwd, *cmd, *out, *err, *str, **strv, **argv = NULL;
|
||||||
char *env[2];
|
char *env[2];
|
||||||
int status, tmp;
|
int status;
|
||||||
gsize n;
|
gsize n;
|
||||||
GKeyFile *kf;
|
GKeyFile *kf;
|
||||||
const char *qga_config =
|
|
||||||
"[general]\n"
|
|
||||||
"daemon=false\n"
|
|
||||||
"method=virtio-serial\n"
|
|
||||||
"path=/path/to/org.qemu.guest_agent.0\n"
|
|
||||||
"pidfile=/var/foo/qemu-ga.pid\n"
|
|
||||||
"statedir=/var/state\n"
|
|
||||||
"verbose=true\n"
|
|
||||||
"blacklist=guest-ping;guest-get-time\n";
|
|
||||||
|
|
||||||
tmp = g_file_open_tmp(NULL, &conf, &error);
|
|
||||||
g_assert_no_error(error);
|
|
||||||
g_assert_cmpint(tmp, >=, 0);
|
|
||||||
g_assert_cmpstr(conf, !=, "");
|
|
||||||
|
|
||||||
g_file_set_contents(conf, qga_config, -1, &error);
|
|
||||||
g_assert_no_error(error);
|
|
||||||
|
|
||||||
cwd = g_get_current_dir();
|
cwd = g_get_current_dir();
|
||||||
cmd = g_strdup_printf("%s%cqemu-ga -D",
|
cmd = g_strdup_printf("%s%cqemu-ga -D",
|
||||||
|
@ -720,7 +703,8 @@ static void test_qga_config(gconstpointer data)
|
||||||
g_shell_parse_argv(cmd, NULL, &argv, &error);
|
g_shell_parse_argv(cmd, NULL, &argv, &error);
|
||||||
g_assert_no_error(error);
|
g_assert_no_error(error);
|
||||||
|
|
||||||
env[0] = g_strdup_printf("QGA_CONF=%s", conf);
|
env[0] = g_strdup_printf("QGA_CONF=tests%cdata%ctest-qga-config",
|
||||||
|
G_DIR_SEPARATOR, G_DIR_SEPARATOR);
|
||||||
env[1] = NULL;
|
env[1] = NULL;
|
||||||
g_spawn_sync(NULL, argv, env, 0,
|
g_spawn_sync(NULL, argv, env, 0,
|
||||||
NULL, NULL, &out, &err, &status, &error);
|
NULL, NULL, &out, &err, &status, &error);
|
||||||
|
@ -775,11 +759,8 @@ static void test_qga_config(gconstpointer data)
|
||||||
|
|
||||||
g_free(out);
|
g_free(out);
|
||||||
g_free(err);
|
g_free(err);
|
||||||
g_free(conf);
|
|
||||||
g_free(env[0]);
|
g_free(env[0]);
|
||||||
g_key_file_free(kf);
|
g_key_file_free(kf);
|
||||||
|
|
||||||
close(tmp);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void test_qga_fsfreeze_status(gconstpointer fix)
|
static void test_qga_fsfreeze_status(gconstpointer fix)
|
||||||
|
|
Loading…
Reference in New Issue