[folks] libsocialweb tests: disconnect all signals
- From: Philip Withnall <pwithnall src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [folks] libsocialweb tests: disconnect all signals
- Date: Tue, 19 Nov 2013 00:42:14 +0000 (UTC)
commit a9e15326b07b0c284d50013e220717b375521a50
Author: Travis Reitter <travis reitter collabora co uk>
Date: Thu Oct 10 16:23:32 2013 -0700
libsocialweb tests: disconnect all signals
Patch by Simon McVittie
tests/libsocialweb/aggregation.vala | 28 ++++++++++++++++++----------
tests/libsocialweb/dummy-lsw.vala | 12 ++++++++----
2 files changed, 26 insertions(+), 14 deletions(-)
---
diff --git a/tests/libsocialweb/aggregation.vala b/tests/libsocialweb/aggregation.vala
index ecb4c13..009bde9 100644
--- a/tests/libsocialweb/aggregation.vala
+++ b/tests/libsocialweb/aggregation.vala
@@ -100,11 +100,14 @@ public class AggregationTests : LibsocialwebTest.TestCase
var lsw_backend = (!) this.lsw_backend;
var mysocialnetwork1 = lsw_backend.add_service ("mysocialnetwork1");
var mysocialnetwork2 = lsw_backend.add_service ("mysocialnetwork2");
+ var signals = new DisconnectionQueue ();
/* Populate mysocialnetwork1 */
- mysocialnetwork1.OpenViewCalled.connect((query, p, path) =>
+ signals.push (mysocialnetwork1,
+ mysocialnetwork1.OpenViewCalled.connect((query, p, path) =>
{
- mysocialnetwork1.contact_views[path].StartCalled.connect ( (path) =>
+ var view = mysocialnetwork1.contact_views[path];
+ signals.push (view, view.StartCalled.connect ( (path) =>
{
Idle.add (() =>
{
@@ -128,13 +131,15 @@ public class AggregationTests : LibsocialwebTest.TestCase
}
return false;
});
- });
- });
+ }));
+ }));
/* Populate mysocialnetwork2 */
- mysocialnetwork2.OpenViewCalled.connect((query, p, path) =>
+ signals.push (mysocialnetwork2,
+ mysocialnetwork2.OpenViewCalled.connect((query, p, path) =>
{
- mysocialnetwork2.contact_views[path].StartCalled.connect ( (path) =>
+ var view = mysocialnetwork2.contact_views[path];
+ signals.push (view, view.StartCalled.connect ( (path) =>
{
Idle.add (() =>
{
@@ -158,8 +163,8 @@ public class AggregationTests : LibsocialwebTest.TestCase
}
return false;
});
- });
- });
+ }));
+ }));
var aggregator = IndividualAggregator.dup ();
Individual[] individual_gathered = new Individual[0];
@@ -196,7 +201,8 @@ public class AggregationTests : LibsocialwebTest.TestCase
&& ((Folks.NameDetails) individual_gathered[1]).nickname == "Gargantua"));
/* Check the result of link_personas */
- aggregator.individuals_changed_detailed.connect ((changes) =>
+ signals.push (aggregator,
+ aggregator.individuals_changed_detailed.connect ((changes) =>
{
var added = changes.get_values ();
var removed = changes.get_keys ();
@@ -226,7 +232,7 @@ public class AggregationTests : LibsocialwebTest.TestCase
}
main_loop.quit ();
- });
+ }));
/* Link personas */
var personas = new HashSet<Persona> ();
@@ -254,6 +260,8 @@ public class AggregationTests : LibsocialwebTest.TestCase
});
TestUtils.loop_run_with_timeout (main_loop, 5);
+
+ signals.drain ();
}
}
diff --git a/tests/libsocialweb/dummy-lsw.vala b/tests/libsocialweb/dummy-lsw.vala
index d340e03..804a660 100644
--- a/tests/libsocialweb/dummy-lsw.vala
+++ b/tests/libsocialweb/dummy-lsw.vala
@@ -40,6 +40,7 @@ public class DummyLswTests : LibsocialwebTest.TestCase
var lsw_backend = (!) this.lsw_backend;
var mysocialnetwork = lsw_backend.add_service ("mysocialnetwork");
var p = new GLib.HashTable<string,string> (null, null);
+ var signals = new DisconnectionQueue ();
try
{
@@ -71,11 +72,14 @@ public class DummyLswTests : LibsocialwebTest.TestCase
/* Test adding two contacts */
string view_path = "";
- mysocialnetwork.OpenViewCalled.connect((query, p, path) =>
+ signals.push (mysocialnetwork,
+ mysocialnetwork.OpenViewCalled.connect((query, p, path) =>
{
debug ("mysocialnetwork.OpenViewCalled.connect");
view_path = path;
- mysocialnetwork.contact_views[path].StartCalled.connect ( (path) =>
+ var view = mysocialnetwork.contact_views[path];
+
+ signals.push (view, view.StartCalled.connect ( (path) =>
{
debug ("OpenViewCalled.connect");
Idle.add (() =>
@@ -103,8 +107,8 @@ public class DummyLswTests : LibsocialwebTest.TestCase
}
return false;
});
- });
- });
+ }));
+ }));
var aggregator = IndividualAggregator.dup ();
Individual? i1 = null;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]