tests: limit backends via the environment a bit more directly
authorSimon McVittie <simon.mcvittie@collabora.co.uk>
Thu, 14 Mar 2013 15:48:26 +0000 (15:48 +0000)
committerSimon McVittie <simon.mcvittie@collabora.co.uk>
Mon, 18 Mar 2013 19:08:27 +0000 (19:08 +0000)
This makes it more obvious what's enabled and what isn't. We want to
make sure that only the intended backends are enabled, because those
are the ones for which we've done enough environmental setup
(D-Bus, etc.) to make sure they don't "leak out" into the user's
real data.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=695381
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
20 files changed:
tests/data/Makefile.am
tests/data/backend-store-all.ini [deleted file]
tests/eds/Makefile.am
tests/eds/data/backend-eds-only.ini [deleted file]
tests/folks/Makefile.am
tests/key-file/Makefile.am
tests/key-file/data/backend-store-key-file-only.ini [deleted file]
tests/lib/eds/test-case.vala
tests/lib/key-file/test-case.vala
tests/lib/libsocialweb/test-case.vala
tests/lib/telepathy/test-case.vala
tests/lib/test-case.vala
tests/lib/tracker/test-case.vala
tests/libsocialweb/Makefile.am
tests/libsocialweb/aggregation.vala
tests/libsocialweb/data/backend-lsw-only.ini [deleted file]
tests/telepathy/Makefile.am
tests/telepathy/data/backend-store-telepathy-only.ini [deleted file]
tests/tracker/Makefile.am
tests/tracker/data/backend-tracker-only.ini [deleted file]

index c8884b4..05425b4 100644 (file)
@@ -1,6 +1,5 @@
 EXTRA_DIST = \
        avatar-01.jpg \
-       backend-store-all.ini \
        $(NULL)
 
 -include $(top_srcdir)/git.mk
diff --git a/tests/data/backend-store-all.ini b/tests/data/backend-store-all.ini
deleted file mode 100644 (file)
index a24f714..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-
-[key-file]
-enabled=true
-
-[telepathy]
-enabled=true
-
-[all-others]
-enabled=false
index 60a863a..d4697ba 100644 (file)
@@ -81,13 +81,10 @@ noinst_PROGRAMS = \
 
 RUN_WITH_PRIVATE_BUS = $(top_srcdir)/tests/tools/with-session-bus-eds.sh
 
-backend_store_key_file=$(srcdir)/data/backend-eds-only.ini
 avatar_file=@abs_top_srcdir@/tests/data/avatar-01.jpg
 TESTS_ENVIRONMENT = \
        FOLKS_BACKEND_PATH=$(BACKEND_UNINST_PATH) \
-        FOLKS_BACKEND_STORE_KEY_FILE_PATH=$(backend_store_key_file) \
        AVATAR_FILE_PATH=$(avatar_file) \
-       FOLKS_PRIMARY_STORE="eds:local://test" \
        $(RUN_WITH_PRIVATE_BUS) \
        --session \
        --
@@ -239,7 +236,6 @@ MAINTAINERCLEANFILES = \
 
 EXTRA_DIST = \
        $(MAINTAINERCLEANFILES) \
-       $(backend_store_key_file) \
        $(NULL)
 
 -include $(top_srcdir)/git.mk
diff --git a/tests/eds/data/backend-eds-only.ini b/tests/eds/data/backend-eds-only.ini
deleted file mode 100644 (file)
index e8a66e1..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-[eds]
-enabled=true
-
-[all-others]
-enabled=false
index b51f242..c680437 100644 (file)
@@ -66,12 +66,9 @@ noinst_PROGRAMS = \
        $(NULL)
 
 SESSION_CONF = $(top_builddir)/tests/lib/telepathy/contactlist/session.conf
-backend_store_key_file=$(top_srcdir)/tests/data/backend-store-all.ini
 avatar_file=@abs_top_srcdir@/tests/data/avatar-01.jpg
 TESTS_ENVIRONMENT = \
        FOLKS_BACKEND_PATH=$(BACKEND_UNINST_PATH) \
-       FOLKS_BACKEND_STORE_KEY_FILE_PATH=$(backend_store_key_file) \
-       FOLKS_PRIMARY_STORE=key-file \
        AVATAR_FILE_PATH=$(avatar_file) \
        $(RUN_WITH_PRIVATE_BUS) \
        --config-file=$(SESSION_CONF) \
index 2d26d56..336e681 100644 (file)
@@ -36,11 +36,8 @@ noinst_PROGRAMS = \
        individual-retrieval \
        $(NULL)
 
-backend_store_key_file=$(srcdir)/data/backend-store-key-file-only.ini
 TESTS_ENVIRONMENT = \
        FOLKS_BACKEND_PATH=$(BACKEND_UNINST_PATH) \
-        FOLKS_BACKEND_STORE_KEY_FILE_PATH=$(backend_store_key_file) \
-        FOLKS_PRIMARY_STORE=key-file \
         $(NULL)
 
 TESTS = $(noinst_PROGRAMS)
@@ -62,7 +59,6 @@ MAINTAINERCLEANFILES = \
 
 EXTRA_DIST = \
        $(MAINTAINERCLEANFILES) \
-       $(backend_store_key_file) \
        $(NULL)
 
 -include $(top_srcdir)/git.mk
diff --git a/tests/key-file/data/backend-store-key-file-only.ini b/tests/key-file/data/backend-store-key-file-only.ini
deleted file mode 100644 (file)
index 4e4d069..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-[key-file]
-enabled=true
-
-[all-others]
-enabled=false
index cecc16e..49bcab1 100644 (file)
@@ -29,6 +29,10 @@ public class EdsTest.TestCase : Folks.TestCase
   public TestCase (string name)
     {
       base (name);
+
+      Environment.set_variable ("FOLKS_BACKENDS_ALLOWED", "eds", true);
+      Environment.set_variable ("FOLKS_PRIMARY_STORE", "eds:local://test",
+          true);
     }
 
   public override void set_up ()
index ee991d7..a804466 100644 (file)
@@ -29,5 +29,8 @@ public class KfTest.TestCase : Folks.TestCase
       base (name);
 
       this.kf_backend = new KfTest.Backend ();
+
+      Environment.set_variable ("FOLKS_BACKENDS_ALLOWED", "key-file", true);
+      Environment.set_variable ("FOLKS_PRIMARY_STORE", "key-file", true);
     }
 }
index 285d39b..18dffc2 100644 (file)
@@ -31,6 +31,9 @@ public class LibsocialwebTest.TestCase : Folks.TestCase
       base (name);
 
       this.lsw_backend = new LibsocialwebTest.Backend ();
+
+      Environment.set_variable ("FOLKS_BACKENDS_ALLOWED", "libsocialweb", true);
+      Environment.set_variable ("FOLKS_PRIMARY_STORE", "", true);
     }
 
   public override void set_up ()
index d57a21a..ca1e503 100644 (file)
@@ -40,6 +40,19 @@ public class TpfTest.TestCase : Folks.TestCase
     {
       base (name);
 
+      if (use_keyfile_too)
+        {
+          Environment.set_variable ("FOLKS_BACKENDS_ALLOWED",
+              "telepathy,key-file", true);
+          Environment.set_variable ("FOLKS_PRIMARY_STORE", "key-file", true);
+        }
+      else
+        {
+          Environment.set_variable ("FOLKS_BACKENDS_ALLOWED",
+              "telepathy", true);
+          Environment.set_variable ("FOLKS_PRIMARY_STORE", "", true);
+        }
+
       this.create_kf_backend ();
       this.create_tp_backend ();
     }
index f344d77..f0c1590 100644 (file)
@@ -34,6 +34,9 @@ public abstract class Folks.TestCase : Object
   public TestCase (string name)
     {
       this._suite = new GLib.TestSuite (name);
+
+      /* By default, no backend is allowed. Subclasses must override. */
+      Environment.set_variable ("FOLKS_BACKENDS_ALLOWED", "", true);
     }
 
   public void add_test (string name, TestMethod test)
index 872a32f..1340328 100644 (file)
@@ -28,6 +28,9 @@ public class TrackerTest.TestCase : Folks.TestCase
     {
       base (name);
 
+      Environment.set_variable ("FOLKS_BACKENDS_ALLOWED", "tracker", true);
+      Environment.set_variable ("FOLKS_PRIMARY_STORE", "tracker", true);
+
       this.tracker_backend = new TrackerTest.Backend ();
     }
 
index e7d5b2e..f61c9de 100644 (file)
@@ -51,11 +51,8 @@ noinst_PROGRAMS = \
        $(NULL)
 
 SESSION_CONF = $(top_builddir)/tests/lib/libsocialweb/session.conf
-backend_store_key_file=$(srcdir)/data/backend-lsw-only.ini
 TESTS_ENVIRONMENT = \
        FOLKS_BACKEND_PATH=$(BACKEND_UNINST_PATH) \
-       FOLKS_BACKEND_STORE_KEY_FILE_PATH=$(backend_store_key_file) \
-       FOLKS_PRIMARY_STORE= \
        $(RUN_WITH_PRIVATE_BUS) \
        --config-file=$(SESSION_CONF) \
        --
@@ -83,7 +80,6 @@ MAINTAINERCLEANFILES = \
 
 EXTRA_DIST = \
        $(MAINTAINERCLEANFILES) \
-       $(backend_store_key_file) \
        $(NULL)
 
 -include $(top_srcdir)/git.mk
index ab764fc..15b5866 100644 (file)
@@ -40,6 +40,8 @@ public class AggregationTests : LibsocialwebTest.TestCase
   public override void set_up ()
     {
       /* Ensure we have a primary store for linking */
+      Environment.set_variable ("FOLKS_BACKENDS_ALLOWED",
+          "libsocialweb,key-file", true);
       Environment.set_variable ("FOLKS_PRIMARY_STORE", "key-file", true);
 
       /* Initialize an empty key file for the relationships*/
diff --git a/tests/libsocialweb/data/backend-lsw-only.ini b/tests/libsocialweb/data/backend-lsw-only.ini
deleted file mode 100644 (file)
index cd9acbb..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-[libsocialweb]
-enabled=true
-
-[all-others]
-enabled=false
index 540fd7c..aa17a9b 100644 (file)
@@ -61,12 +61,9 @@ AM_VALAFLAGS += \
        $(NULL)
 
 SESSION_CONF = $(top_builddir)/tests/lib/telepathy/contactlist/session.conf
-backend_store_key_file=$(srcdir)/data/backend-store-telepathy-only.ini
 TESTS_ENVIRONMENT = \
        FOLKS_BACKEND_PATH=$(BACKEND_UNINST_PATH) \
        FOLKS_BACKEND_KEY_FILE_PATH=$(srcdir)/data/relationships-empty.ini \
-       FOLKS_BACKEND_STORE_KEY_FILE_PATH=$(backend_store_key_file) \
-       FOLKS_PRIMARY_STORE= \
        $(RUN_WITH_PRIVATE_BUS) \
        --config-file=$(SESSION_CONF) \
        --
@@ -123,7 +120,6 @@ MAINTAINERCLEANFILES = \
 
 EXTRA_DIST = \
        $(MAINTAINERCLEANFILES) \
-       $(backend_store_key_file) \
        $(srcdir)/data/relationships-empty.ini \
        $(NULL)
 
diff --git a/tests/telepathy/data/backend-store-telepathy-only.ini b/tests/telepathy/data/backend-store-telepathy-only.ini
deleted file mode 100644 (file)
index 533d9d9..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-[telepathy]
-enabled=true
-
-[all-others]
-enabled=false
index 2bda2ee..9b0c388 100644 (file)
@@ -104,12 +104,9 @@ noinst_PROGRAMS = \
        set-null-avatar \
        $(NULL)
 
-backend_store_key_file=$(srcdir)/data/backend-tracker-only.ini
 avatar_file=@abs_top_srcdir@/tests/data/avatar-01.jpg
 TESTS_ENVIRONMENT = \
        FOLKS_BACKEND_PATH=$(BACKEND_UNINST_PATH) \
-       FOLKS_BACKEND_STORE_KEY_FILE_PATH=$(backend_store_key_file) \
-       FOLKS_PRIMARY_STORE=tracker \
        AVATAR_FILE_PATH=$(avatar_file) \
        $(RUN_WITH_PRIVATE_BUS) \
        --session \
@@ -418,7 +415,6 @@ MAINTAINERCLEANFILES = \
 
 EXTRA_DIST = \
        $(MAINTAINERCLEANFILES) \
-       $(backend_store_key_file) \
        $(NULL)
 
 -include $(top_srcdir)/git.mk
diff --git a/tests/tracker/data/backend-tracker-only.ini b/tests/tracker/data/backend-tracker-only.ini
deleted file mode 100644 (file)
index c274f45..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-[tracker]
-enabled=true
-
-[all-others]
-enabled=false
-