Make symlink test work installed

We can't assume that the location used for G_TEST_DIST paths
is writable, so just create the symlink in the current directory
instead.
This commit is contained in:
Matthias Clasen 2014-01-01 23:28:23 -05:00
parent d91023fb4c
commit d25b655bf5

View File

@ -795,14 +795,17 @@ test_read_link (void)
#ifdef G_OS_UNIX
int ret;
const gchar *oldpath;
const gchar *newpath;
const gchar *badpath;
gchar *cwd;
gchar *newpath;
gchar *badpath;
gchar *path;
GError *error = NULL;
cwd = g_get_current_dir ();
oldpath = g_test_get_filename (G_TEST_DIST, "4096-random-bytes", NULL);
newpath = g_test_get_filename (G_TEST_DIST, "page-of-junk", NULL);
badpath = g_test_get_filename (G_TEST_DIST, "4097-random-bytes", NULL);
newpath = g_build_filename (cwd, "page-of-junk", NULL);
badpath = g_build_filename (cwd, "4097-random-bytes", NULL);
remove (newpath);
ret = symlink (oldpath, newpath);
g_assert (ret == 0);
@ -823,6 +826,10 @@ test_read_link (void)
g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_INVAL);
g_assert_null (path);
g_free (cwd);
g_free (newpath);
g_free (badpath);
#endif
#else
g_test_skip ("Symbolic links not supported");