[tracker/tracker-0.10] functional-tests: Disconnect writeback name-owner signal
- From: Martyn James Russell <mr src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/tracker-0.10] functional-tests: Disconnect writeback name-owner signal
- Date: Tue, 8 Feb 2011 14:35:32 +0000 (UTC)
commit ebe4b2ffd74888752a551efbc2b465948ca2154a
Author: Ivan Frade <ivan frade nokia com>
Date: Fri Feb 4 19:22:07 2011 +0200
functional-tests: Disconnect writeback name-owner signal
To avoid duplicate messages when starting/stopping the process in successive tests
tests/functional-tests/common/utils/system.py | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
---
diff --git a/tests/functional-tests/common/utils/system.py b/tests/functional-tests/common/utils/system.py
index 2718ae2..0e786b5 100644
--- a/tests/functional-tests/common/utils/system.py
+++ b/tests/functional-tests/common/utils/system.py
@@ -242,18 +242,18 @@ class TrackerWritebackLifeCycle():
"""
self.loop = gobject.MainLoop()
dbus_loop = DBusGMainLoop(set_as_default=True)
- bus = dbus.SessionBus (dbus_loop)
+ self.bus = dbus.SessionBus (dbus_loop)
- obj = bus.get_object ("org.freedesktop.DBus",
+ obj = self.bus.get_object ("org.freedesktop.DBus",
"/org/freedesktop/DBus")
self.admin = dbus.Interface (obj, dbus_interface="org.freedesktop.DBus")
if (self.admin.NameHasOwner (cfg.WRITEBACK_BUSNAME)):
raise Exception ("Writeback is already running! kill it before starting this one")
- bus.add_signal_receiver (self.__name_owner_changed_cb,
- signal_name="NameOwnerChanged",
- path="/org/freedesktop/DBus",
- dbus_interface="org.freedesktop.DBus")
+ self.name_owner_match = self.bus.add_signal_receiver (self.__name_owner_changed_cb,
+ signal_name="NameOwnerChanged",
+ path="/org/freedesktop/DBus",
+ dbus_interface="org.freedesktop.DBus")
self.__start_tracker_writeback ()
# It should step out of this loop when the writeback is visible in DBus
@@ -263,6 +263,9 @@ class TrackerWritebackLifeCycle():
def stop (self):
assert self.process
self.process.kill ()
+ self.bus._clean_up_signal_match (self.name_owner_match)
+ print "[writeback] stop."
+
def __name_owner_changed_cb (self, name, old_owner, new_owner):
if name == cfg.WRITEBACK_BUSNAME:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]