Fix introspection tests
authorStef Walter <stefw@gnome.org>
Tue, 31 Jul 2012 12:56:52 +0000 (14:56 +0200)
committerStef Walter <stefw@gnome.org>
Tue, 31 Jul 2012 12:56:52 +0000 (14:56 +0200)
 * Regressed due to hiding of internal symbols in libsecret.so and
   creation of a separate libsecret-testable.so library

15 files changed:
libsecret/Makefile.am
libsecret/secret-private.h
libsecret/secret-service.c
libsecret/tests/Makefile.am
libsecret/tests/mock-service.c
libsecret/tests/test-clear-password.py
libsecret/tests/test-lookup-password.py
libsecret/tests/test-methods.c
libsecret/tests/test-password.c
libsecret/tests/test-paths.c
libsecret/tests/test-service.c
libsecret/tests/test-store-password.py
libsecret/tests/test-unstable.py
libsecret/tests/test-vala-lang.vala
libsecret/tests/test-vala-unstable.vala

index 82c80d8..7fe9811 100644 (file)
@@ -86,6 +86,7 @@ libsecret_testable_la_SOURCES =
 libsecret_testable_la_LIBADD = $(libsecret_@SECRET_MAJOR@_la_OBJECTS) \
        $(libsecret_@SECRET_MAJOR@_la_LIBADD)
 libsecret_testable_la_DEPENDENCIES = $(libsecret_@SECRET_MAJOR@_la_OBJECTS)
+libsecret_testable_la_LDFLAGS = -rpath /force/shared
 
 DBUS_XML_DEFINITIONS = \
        $(srcdir)/org.freedesktop.Secrets.xml
index aa66689..74c9297 100644 (file)
@@ -120,8 +120,6 @@ gboolean             _secret_util_set_property_sync           (GDBusProxy *proxy
 
 gboolean             _secret_util_have_cached_properties      (GDBusProxy *proxy);
 
-void                 _secret_service_set_default_bus_name     (const gchar *bus_name);
-
 SecretSession *      _secret_service_get_session              (SecretService *self);
 
 void                 _secret_service_take_session             (SecretService *self,
index 6d4218b..9234db2 100644 (file)
 EGG_SECURE_GLIB_DEFINITIONS ();
 
 GQuark _secret_error_quark = 0;
-static const gchar *default_bus_name = SECRET_SERVICE_BUS_NAME;
 
 enum {
        PROP_0,
@@ -732,11 +731,16 @@ secret_service_async_initable_iface (GAsyncInitableIface *iface)
        iface->init_finish = secret_service_async_initable_init_finish;
 }
 
-void
-_secret_service_set_default_bus_name (const gchar *bus_name)
+static const gchar *
+get_default_bus_name (void)
 {
-       g_return_if_fail (bus_name != NULL);
-       default_bus_name = bus_name;
+       const gchar *bus_name;
+
+       bus_name = g_getenv ("SECRET_SERVICE_BUS_NAME");
+       if (bus_name == NULL)
+               bus_name = SECRET_SERVICE_BUS_NAME;
+
+       return bus_name;
 }
 
 /**
@@ -772,7 +776,7 @@ secret_service_get (SecretServiceFlags flags,
                                            cancellable, callback, user_data,
                                            "g-flags", G_DBUS_PROXY_FLAGS_NONE,
                                            "g-interface-info", _secret_gen_service_interface_info (),
-                                           "g-name", default_bus_name,
+                                           "g-name", get_default_bus_name (),
                                            "g-bus-type", G_BUS_TYPE_SESSION,
                                            "g-object-path", SECRET_SERVICE_PATH,
                                            "g-interface-name", SECRET_SERVICE_INTERFACE,
@@ -870,7 +874,7 @@ secret_service_get_sync (SecretServiceFlags flags,
                service = g_initable_new (SECRET_TYPE_SERVICE, cancellable, error,
                                          "g-flags", G_DBUS_PROXY_FLAGS_NONE,
                                          "g-interface-info", _secret_gen_service_interface_info (),
-                                         "g-name", default_bus_name,
+                                         "g-name", get_default_bus_name (),
                                          "g-bus-type", G_BUS_TYPE_SESSION,
                                          "g-object-path", SECRET_SERVICE_PATH,
                                          "g-interface-name", SECRET_SERVICE_INTERFACE,
@@ -944,7 +948,7 @@ secret_service_new (GType service_gtype,
        g_return_if_fail (g_type_is_a (service_gtype, SECRET_TYPE_SERVICE));
 
        if (service_bus_name == NULL)
-               service_bus_name = default_bus_name;
+               service_bus_name = get_default_bus_name ();
 
        g_async_initable_new_async (service_gtype, G_PRIORITY_DEFAULT,
                                    cancellable, callback, user_data,
@@ -1027,7 +1031,7 @@ secret_service_new_sync (GType service_gtype,
        g_return_val_if_fail (g_type_is_a (service_gtype, SECRET_TYPE_SERVICE), NULL);
 
        if (service_bus_name == NULL)
-               service_bus_name = default_bus_name;
+               service_bus_name = get_default_bus_name ();
 
        return g_initable_new (service_gtype, cancellable, error,
                               "g-flags", G_DBUS_PROXY_FLAGS_NONE,
index aed83e0..572aa66 100644 (file)
@@ -25,7 +25,6 @@ libmock_service_la_LDFLAGS = \
        -rpath /force/shared
 
 libmock_service_la_LIBADD = \
-       $(top_builddir)/libsecret/libsecret-testable.la \
        $(LIBGCRYPT_LIBS)
 
 LDADD =  \
index 6a5a0f6..583e015 100644 (file)
@@ -45,7 +45,7 @@ mock_service_start (const gchar *mock_script,
        g_return_val_if_fail (mock_script != NULL, FALSE);
        g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
 
-       _secret_service_set_default_bus_name (MOCK_SERVICE_NAME);
+       g_setenv ("SECRET_SERVICE_BUS_NAME", MOCK_SERVICE_NAME, TRUE);
 
        if (pipe (wait_pipe) < 0) {
                g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (errno),
@@ -88,6 +88,5 @@ mock_service_stop (void)
        }
 
        g_spawn_close_pid (pid);
-       secret_service_disconnect ();
        pid = 0;
 }
index 8d01506..b16b1e2 100644 (file)
@@ -3,7 +3,7 @@
 import unittest
 
 from gi.repository import MockService as Mock
-from gi.repository import Secret, GLib
+from gi.repository import Secret, SecretUnstable, GLib
 
 STORE_SCHEMA = Secret.Schema.new("org.mock.Schema",
        Secret.SchemaFlags.NONE,
@@ -19,6 +19,7 @@ class TestRemove(unittest.TestCase):
                Mock.start("mock-service-normal.py")
 
        def tearDown(self):
+               SecretUnstable.Service.disconnect()
                Mock.stop()
 
        def testSynchronous(self):
index 5e05e39..884d056 100644 (file)
@@ -3,7 +3,7 @@
 import unittest
 
 from gi.repository import MockService as Mock
-from gi.repository import Secret, GLib
+from gi.repository import Secret, SecretUnstable, GLib
 
 STORE_SCHEMA = Secret.Schema.new("org.mock.Schema",
        Secret.SchemaFlags.NONE,
@@ -19,6 +19,7 @@ class TestLookup(unittest.TestCase):
                Mock.start("mock-service-normal.py")
 
        def tearDown(self):
+               SecretUnstable.Service.disconnect()
                Mock.stop()
 
        def testSynchronous(self):
index b94188a..410a578 100644 (file)
@@ -89,6 +89,7 @@ static void
 teardown_mock (Test *test,
                gconstpointer unused)
 {
+       secret_service_disconnect ();
        mock_service_stop ();
 }
 
index 758ab65..7968f69 100644 (file)
@@ -75,6 +75,7 @@ static void
 teardown (Test *test,
           gconstpointer unused)
 {
+       secret_service_disconnect ();
        mock_service_stop ();
 }
 
index 8ca5568..6173ed6 100644 (file)
@@ -89,6 +89,7 @@ static void
 teardown_mock (Test *test,
                gconstpointer unused)
 {
+       secret_service_disconnect ();
        mock_service_stop ();
 }
 
index 557c76c..87fa272 100644 (file)
@@ -47,6 +47,7 @@ static void
 teardown_mock (Test *test,
                gconstpointer unused)
 {
+       secret_service_disconnect ();
        mock_service_stop ();
 }
 
index a14b382..83037e3 100644 (file)
@@ -3,7 +3,7 @@
 import unittest
 
 from gi.repository import MockService as Mock
-from gi.repository import Secret, GLib
+from gi.repository import Secret, SecretUnstable, GLib
 
 STORE_SCHEMA = Secret.Schema.new("org.mock.Schema",
        Secret.SchemaFlags.NONE,
@@ -19,6 +19,7 @@ class TestStore(unittest.TestCase):
                Mock.start("mock-service-normal.py")
 
        def tearDown(self):
+               SecretUnstable.Service.disconnect()
                Mock.stop()
 
        def testSynchronous(self):
index 09b3968..00d6862 100644 (file)
@@ -10,6 +10,7 @@ class TestStore(unittest.TestCase):
                Mock.start("mock-service-normal.py")
 
        def tearDown(self):
+               Secret.Service.disconnect()
                Mock.stop()
 
        def testSynchronous(self):
index fad5252..b50e637 100644 (file)
@@ -165,6 +165,7 @@ private static int main (string[] args) {
 
   var res = GLib.Test.run ();
 
+  Secret.Service.disconnect ();
   MockService.stop ();
   schema = null;
 
index ac28ce5..2f39f8b 100644 (file)
@@ -20,6 +20,7 @@ private static int main (string[] args) {
        GLib.Test.add_data_func ("/vala/unstable/read-alias", test_read_alias);
 
        var res = GLib.Test.run ();
+       Secret.Service.disconnect ();
        MockService.stop ();
        return res;
 }