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:
Marc-André Lureau 2016-06-15 13:06:01 +02:00 committed by Michael Roth
parent fe31017f79
commit 1741b945f2
2 changed files with 12 additions and 23 deletions

View File

@ -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

View File

@ -691,28 +691,11 @@ static void test_qga_blacklist(gconstpointer data)
static void test_qga_config(gconstpointer data)
{
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];
int status, tmp;
int status;
gsize n;
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();
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_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;
g_spawn_sync(NULL, argv, env, 0,
NULL, NULL, &out, &err, &status, &error);
@ -775,11 +759,8 @@ static void test_qga_config(gconstpointer data)
g_free(out);
g_free(err);
g_free(conf);
g_free(env[0]);
g_key_file_free(kf);
close(tmp);
}
static void test_qga_fsfreeze_status(gconstpointer fix)