dbus-daemon test: sanity-check the just-installed config file when using DESTDIR
authorSimon McVittie <simon.mcvittie@collabora.co.uk>
Mon, 21 Mar 2011 18:40:16 +0000 (18:40 +0000)
committerSimon McVittie <simon.mcvittie@collabora.co.uk>
Fri, 10 Jun 2011 17:32:06 +0000 (18:32 +0100)
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34570

test/Makefile.am
test/dbus-daemon.c

index 97b080c..bb57226 100644 (file)
@@ -81,7 +81,9 @@ installcheck_tests =
 installcheck_environment = \
        DBUS_TEST_DAEMON=$(DESTDIR)$(DBUS_DAEMONDIR)/dbus-daemon$(EXEEXT) \
        DBUS_TEST_DATA=@abs_top_builddir@/test/data \
-       DBUS_TEST_USE_INSTALLED=1
+       DBUS_TEST_USE_INSTALLED=1 \
+       DBUS_TEST_SYSCONFDIR=$(sysconfdir) \
+       DESTDIR=$(DESTDIR)
 
 TESTS_ENVIRONMENT = \
        DBUS_TEST_DAEMON=@abs_top_builddir@/bus/dbus-daemon$(EXEEXT) \
index 04955e0..d2d5246 100644 (file)
@@ -184,7 +184,17 @@ setup (Fixture *f,
 
   if (g_getenv ("DBUS_TEST_USE_INSTALLED") != NULL)
     {
-      config = g_strdup ("--session");
+      /* we strdup this because it might be clobbered by a subsequent
+       * g_getenv */
+      gchar *destdir = g_strdup (g_getenv ("DESTDIR"));
+
+      if (destdir != NULL && *destdir != '\0')
+        config = g_strdup_printf ("--config-file=%s%s/dbus-1/session.conf",
+            destdir, g_getenv ("DBUS_TEST_SYSCONFDIR"));
+      else
+        config = g_strdup ("--session");
+
+      g_free (destdir);
     }
   else
     {