telepathy-gabble: jingle/stun-server: use jingletest2
Will Thompson
wjt at kemper.freedesktop.org
Thu Dec 6 04:29:04 PST 2012
Module: telepathy-gabble
Branch: master
Commit: fbd33aa489c1d9c129e2815ed86678ceacb0ad0d
URL: http://cgit.freedesktop.org/telepathy/telepathy-gabble/commit/?id=fbd33aa489c1d9c129e2815ed86678ceacb0ad0d
Author: Will Thompson <will.thompson at collabora.co.uk>
Date: Mon Nov 26 09:46:21 2012 +0000
jingle/stun-server: use jingletest2
In passing, test all dialects. (Though I think this may be a little
overzealous.)
https://bugs.freedesktop.org/show_bug.cgi?id=25385
---
tests/twisted/jingle/jingletest2.py | 8 ++--
tests/twisted/jingle/stun-server.py | 62 +++++++++++++---------------------
2 files changed, 28 insertions(+), 42 deletions(-)
diff --git a/tests/twisted/jingle/jingletest2.py b/tests/twisted/jingle/jingletest2.py
index 5ca91d4..8016103 100644
--- a/tests/twisted/jingle/jingletest2.py
+++ b/tests/twisted/jingle/jingletest2.py
@@ -850,11 +850,11 @@ class JingleTest2:
signature='(usqa{sv})')
-def test_dialects(f, dialects):
+def test_dialects(f, dialects, params=None, protocol=None):
for dialect in dialects:
- exec_test(partial(f, dialect()))
+ exec_test(partial(f, dialect()), params=params, protocol=protocol)
-def test_all_dialects(f):
+def test_all_dialects(f, params=None, protocol=None):
dialectmap = { "jingle015": JingleProtocol015,
"jingle031": JingleProtocol031,
"gtalk03": GtalkProtocol03,
@@ -868,4 +868,4 @@ def test_all_dialects(f):
else:
for d in jd.split (','):
dialects.append(dialectmap[d])
- test_dialects(f, dialects)
+ test_dialects(f, dialects, params=params, protocol=protocol)
diff --git a/tests/twisted/jingle/stun-server.py b/tests/twisted/jingle/stun-server.py
index 5431e7b..0676993 100644
--- a/tests/twisted/jingle/stun-server.py
+++ b/tests/twisted/jingle/stun-server.py
@@ -6,14 +6,12 @@ from functools import partial
import dbus
import socket
-from gabbletest import (
- exec_test, make_result_iq, sync_stream, GoogleXmlStream, elem_iq, elem,
-)
+from gabbletest import make_result_iq, GoogleXmlStream, elem_iq, elem
from servicetest import (
make_channel_proxy, EventPattern,
assertEquals, assertLength, assertNotEquals, assertEquals
)
-import jingletest
+from jingletest2 import test_all_dialects, JingleTest2
import constants as cs
import ns
@@ -57,8 +55,8 @@ def push_jingle_info(q, stream, stun_server, stun_port):
stream.send(iq)
q.expect('stream-iq', iq_type='result', iq_id=iq['id'])
-def init_test(q, conn, stream, google=False, google_push_replacements=None):
- jt = jingletest.JingleTest(stream, 'test at localhost', 'foo at bar.com/Foo')
+def init_test(jp, q, conn, stream, google=False, google_push_replacements=None):
+ jt = JingleTest2(jp, conn, q, stream, 'test at localhost', 'foo at bar.com/Foo')
# If we need to override remote caps, feats, codecs or caps,
# this is a good time to do it
@@ -77,27 +75,17 @@ def init_test(q, conn, stream, google=False, google_push_replacements=None):
EventPattern('stream-iq', query_ns=ns.GOOGLE_JINGLE_INFO),
])
- # We need remote end's presence for capabilities
- jt.send_remote_presence()
-
- # Gabble doesn't trust it, so makes a disco
- event = q.expect('stream-iq', query_ns='http://jabber.org/protocol/disco#info',
- to='foo at bar.com/Foo')
-
- jt.send_remote_disco_reply(event.stanza)
-
- # Force Gabble to process the caps before calling RequestChannel
- sync_stream(q, stream)
+ jt.send_presence_and_caps()
remote_handle = conn.RequestHandles(1, ["foo at bar.com/Foo"])[0]
return jt, remote_handle
-def test_streamed_media(q, bus, conn, stream,
+def test_streamed_media(jp, q, bus, conn, stream,
expected_stun_servers=None, google=False, google_push_replacements=None,
expected_relays=[]):
# Initialize the test values
- jt, remote_handle = init_test(q, conn, stream, google, google_push_replacements)
+ jt, remote_handle = init_test(jp, q, conn, stream, google, google_push_replacements)
# Remote end calls us
jt.incoming_call()
@@ -200,17 +188,15 @@ def test_streamed_media(q, bus, conn, stream,
q.expect_many(
EventPattern('stream-iq',
- predicate=lambda e: e.query is not None and
- e.query.name == 'jingle' and
- e.query['action'] == 'session-terminate'),
+ predicate=jp.action_predicate('session-terminate')),
EventPattern('dbus-signal', signal='Closed'),
)
-def test_call(q, bus, conn, stream,
+def test_call(jp, q, bus, conn, stream,
expected_stun_servers=None, google=False, google_push_replacements=None,
expected_relays=[]):
# Initialize the test values
- jt, remote_handle = init_test(q, conn, stream, google, google_push_replacements)
+ jt, remote_handle = init_test(jp, q, conn, stream, google, google_push_replacements)
# Advertise that we can do new style calls
conn.ContactCapabilities.UpdateCapabilities([
@@ -279,31 +265,31 @@ def test_call(q, bus, conn, stream,
if __name__ == '__main__':
# StreamedMedia tests
- exec_test(partial(test_streamed_media,
+ test_all_dialects(partial(test_streamed_media,
google=False))
- exec_test(partial(test_streamed_media,
+ test_all_dialects(partial(test_streamed_media,
google=False, expected_stun_servers=[('5.4.3.2', 54321)]),
params={'fallback-stun-server': 'resolves-to-5.4.3.2',
'fallback-stun-port': dbus.UInt16(54321)})
- exec_test(partial(test_streamed_media, google=False,
+ test_all_dialects(partial(test_streamed_media, google=False,
expected_stun_servers=[('5.4.3.2', 1)]),
params={'account': 'test at stunning.localhost'})
if GOOGLE_RELAY_ENABLED:
- exec_test(partial(test_streamed_media,
+ test_all_dialects(partial(test_streamed_media,
google=True, expected_stun_servers=[('1.2.3.4', 12345)]),
protocol=GoogleXmlStream)
- exec_test(partial(test_streamed_media,
+ test_all_dialects(partial(test_streamed_media,
google=True, expected_stun_servers=[('5.4.3.2', 54321)]),
protocol=GoogleXmlStream,
params={'stun-server': 'resolves-to-5.4.3.2',
'stun-port': dbus.UInt16(54321)})
- exec_test(partial(test_streamed_media,
+ test_all_dialects(partial(test_streamed_media,
google=True, expected_stun_servers=[('1.2.3.4', 12345)]),
protocol=GoogleXmlStream,
params={'fallback-stun-server': 'resolves-to-5.4.3.2',
'fallback-stun-port': dbus.UInt16(54321)})
- exec_test(partial(test_streamed_media,
+ test_all_dialects(partial(test_streamed_media,
google=True, google_push_replacements=('resolves-to-5.4.3.2', '3838'),
expected_stun_servers=[('5.4.3.2', 3838)]),
protocol=GoogleXmlStream)
@@ -312,33 +298,33 @@ if __name__ == '__main__':
# Call tests
if CHANNEL_TYPE_CALL_ENABLED:
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=False))
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=False, expected_stun_servers=[('5.4.3.2', 54321)]),
params={'fallback-stun-server': 'resolves-to-5.4.3.2',
'fallback-stun-port': dbus.UInt16(54321)})
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=False, expected_stun_servers=[('5.4.3.2', 1)]),
params={'account': 'test at stunning.localhost'})
else:
print "NOTE: built with --disable-channel-type-call; omitting Call tests"
if CHANNEL_TYPE_CALL_ENABLED and GOOGLE_RELAY_ENABLED:
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=True, expected_stun_servers=[('1.2.3.4', 12345)]),
protocol=GoogleXmlStream)
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=True, expected_stun_servers=[('5.4.3.2', 54321)]),
protocol=GoogleXmlStream,
params={'stun-server': 'resolves-to-5.4.3.2',
'stun-port': dbus.UInt16(54321)})
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=True, expected_stun_servers=[('1.2.3.4', 12345)]),
protocol=GoogleXmlStream,
params={'fallback-stun-server': 'resolves-to-5.4.3.2',
'fallback-stun-port': dbus.UInt16(54321)})
- exec_test(partial(test_call,
+ test_all_dialects(partial(test_call,
google=True, google_push_replacements=('resolves-to-5.4.3.2', '3838'),
expected_stun_servers=[('5.4.3.2', 3838)]),
protocol=GoogleXmlStream)
More information about the telepathy-commits
mailing list