[telepathy-gabble/master] Improve group checks in Create(StreamedMedia) test
Will Thompson
will.thompson at collabora.co.uk
Fri Apr 10 05:00:57 PDT 2009
---
.../jingle/test-outgoing-call-requestotron.py | 31 ++++++++++++++++----
1 files changed, 25 insertions(+), 6 deletions(-)
diff --git a/tests/twisted/jingle/test-outgoing-call-requestotron.py b/tests/twisted/jingle/test-outgoing-call-requestotron.py
index 5cff6a2..538c222 100644
--- a/tests/twisted/jingle/test-outgoing-call-requestotron.py
+++ b/tests/twisted/jingle/test-outgoing-call-requestotron.py
@@ -108,14 +108,16 @@ def test(q, bus, conn, stream):
assertEquals('test at localhost', channel_props['InitiatorID'])
assertEquals(conn.GetSelfHandle(), channel_props['InitiatorHandle'])
- # Exercise Group Properties from spec 0.17.6 (in a basic way)
+ # Exercise Group Properties
group_props = group_iface.GetAll(
cs.CHANNEL_IFACE_GROUP, dbus_interface=dbus.PROPERTIES_IFACE)
assertContains('HandleOwners', group_props)
- assertContains('Members', group_props)
- assertContains('LocalPendingMembers', group_props)
- assertContains('RemotePendingMembers', group_props)
- assertContains('GroupFlags', group_props)
+ assertEquals([self_handle], group_props['Members'])
+ assertEquals([], group_props['LocalPendingMembers'])
+ assertEquals([], group_props['RemotePendingMembers'])
+
+ expected_flags = cs.GF_PROPERTIES
+ assertEquals(expected_flags, group_props['GroupFlags'])
# The remote contact shouldn't be in remote pending yet (nor should it be
# in members!)
@@ -157,11 +159,28 @@ def test(q, bus, conn, stream):
stream_handler.Ready(jt.get_audio_codecs_dbus())
stream_handler.StreamState(cs.MEDIA_STREAM_STATE_CONNECTED)
- e = q.expect('stream-iq')
+ # When we actually send XML to the peer, they should pop up in remote
+ # pending.
+ e, _ = q.expect_many(
+ EventPattern('stream-iq'),
+ EventPattern('dbus-signal', signal='MembersChanged',
+ args=["", [], [], [], [handle], self_handle, cs.GC_REASON_INVITED]),
+ )
assertEquals('jingle', e.query.name)
assertEquals('session-initiate', e.query['action'])
stream.send(gabbletest.make_result_iq(stream, e.stanza))
+ # Check the Group interface's properties again!
+ group_props = group_iface.GetAll(
+ cs.CHANNEL_IFACE_GROUP, dbus_interface=dbus.PROPERTIES_IFACE)
+ assertContains('HandleOwners', group_props)
+ assertEquals([self_handle], group_props['Members'])
+ assertEquals([], group_props['LocalPendingMembers'])
+ assertEquals([handle], group_props['RemotePendingMembers'])
+
+ expected_flags = cs.GF_PROPERTIES
+ assertEquals(expected_flags, group_props['GroupFlags'])
+
jt.outgoing_call_reply(e.query['sid'], True)
q.expect('stream-iq', iq_type='result')
--
1.5.6.5
More information about the telepathy-commits
mailing list