[Telepathy-commits] [telepathy-gabble/master] deal with possible races in signal delivery (1/2)
Senko Rasic
senko.rasic at collabora.co.uk
Tue Aug 19 10:52:15 PDT 2008
20080506131150-01440-3ee46f0547e0cb47cd997f640675a61dd5c96cf3.gz
---
tests/twisted/muc/test-muc-invitation.py | 23 ++++++++-------
tests/twisted/muc/test-muc-properties.py | 46 +++++++++++++++--------------
tests/twisted/test-group-race.py | 3 +-
3 files changed, 37 insertions(+), 35 deletions(-)
diff --git a/tests/twisted/muc/test-muc-invitation.py b/tests/twisted/muc/test-muc-invitation.py
index 0843335..56fe119 100644
--- a/tests/twisted/muc/test-muc-invitation.py
+++ b/tests/twisted/muc/test-muc-invitation.py
@@ -63,17 +63,7 @@ def expect_text_channel(event, data):
return True
- at match('dbus-signal', signal='MembersChanged')
-def expect_add_myself_into_remote_pending(event, data):
- assert event.args == ['', [], [data['bob_handle']], [],
- [data['room_self_handle']], 0,
- data['room_self_handle']]
- return True
-
- at match('dbus-return', method='AddMembers')
-def expect_add_myself_success(event, data):
- return True
-
+ at lazy
@match('stream-presence', to='chat at conf.localhost/test')
def expect_presence(event, data):
# Send presence for own membership of room.
@@ -87,6 +77,17 @@ def expect_presence(event, data):
return True
@match('dbus-signal', signal='MembersChanged')
+def expect_add_myself_into_remote_pending(event, data):
+ assert event.args == ['', [], [data['bob_handle']], [],
+ [data['room_self_handle']], 0,
+ data['room_self_handle']]
+ return True
+
+ at match('dbus-return', method='AddMembers')
+def expect_add_myself_success(event, data):
+ return True
+
+ at match('dbus-signal', signal='MembersChanged')
def expect_members_changed2(event, data):
assert event.args == ['', [data['room_self_handle']], [], [],
[], 0, 0]
diff --git a/tests/twisted/muc/test-muc-properties.py b/tests/twisted/muc/test-muc-properties.py
index ed2f1c1..ad295d8 100644
--- a/tests/twisted/muc/test-muc-properties.py
+++ b/tests/twisted/muc/test-muc-properties.py
@@ -53,28 +53,6 @@ def expect_presence(event, data):
data['stream'].send(presence)
return True
- at match('dbus-signal', signal='MembersChanged',
- args=[u'', [2], [], [], [], 0, 0])
-def expect_members_changed2(event, data):
- return True
-
- at match('dbus-return', method='RequestChannel')
-def expect_request_channel_return(event, data):
- bus = data['conn']._bus
- data['text_chan'] = bus.get_object(
- data['conn']._named_service, event.value[0])
-
- props_iface = dbus.Interface(data['text_chan'],
- 'org.freedesktop.Telepathy.Properties')
- props = dict([(name, id)
- for id, name, sig, flags in props_iface.ListProperties()])
- call_async(data['test'], props_iface, 'SetProperties',
- [(props['password'], 'foo'), (props['password-required'], True)])
-
- data['props_iface'] = props_iface
- data['props'] = props
- return True
-
def add_field(elem, type, var, value):
field = elem.addElement('field')
field['type'] = type
@@ -100,12 +78,36 @@ def handle_muc_get_iq(stream, stanza):
stream.send(iq)
return True
+ at lazy
@match('stream-iq', to='chat at conf.localhost', iq_type='get',
query_ns='http://jabber.org/protocol/muc#owner')
def expect_muc_get_iq1(event, data):
handle_muc_get_iq(data['stream'], event.stanza)
return True
+ at match('dbus-signal', signal='MembersChanged',
+ args=[u'', [2], [], [], [], 0, 0])
+def expect_members_changed2(event, data):
+ return True
+
+ at match('dbus-return', method='RequestChannel')
+def expect_request_channel_return(event, data):
+ bus = data['conn']._bus
+ data['text_chan'] = bus.get_object(
+ data['conn']._named_service, event.value[0])
+
+ props_iface = dbus.Interface(data['text_chan'],
+ 'org.freedesktop.Telepathy.Properties')
+ props = dict([(name, id)
+ for id, name, sig, flags in props_iface.ListProperties()])
+ call_async(data['test'], props_iface, 'SetProperties',
+ [(props['password'], 'foo'), (props['password-required'], True)])
+
+ data['props_iface'] = props_iface
+ data['props'] = props
+ return True
+
+
@match('stream-iq', to='chat at conf.localhost', iq_type='get',
query_ns='http://jabber.org/protocol/muc#owner')
def expect_muc_get_iq2(event, data):
diff --git a/tests/twisted/test-group-race.py b/tests/twisted/test-group-race.py
index 59a480a..d73ef58 100644
--- a/tests/twisted/test-group-race.py
+++ b/tests/twisted/test-group-race.py
@@ -10,10 +10,9 @@ from twisted.words.protocols.jabber.client import IQ
from twisted.words.xish import domish, xpath
from twisted.internet import reactor
+ at lazy
@match('dbus-signal', signal='StatusChanged', args=[0, 1])
def expect_connected(event, data):
-
-
return True
@match('stream-iq', query_ns='jabber:iq:roster')
--
1.5.6.3
More information about the Telepathy-commits
mailing list