summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLance Stout <lancestout@gmail.com>2011-03-23 10:01:21 -0400
committerLance Stout <lancestout@gmail.com>2011-03-23 10:01:21 -0400
commit694673b9bdc108ae109efd4dafa8893a22952b94 (patch)
tree41e8ca2ea185a3cd7032764b0d911b2850ebbe1a /tests
parent306bdd802140b65957aed7a3f5d384ccbf02f61a (diff)
parentf2449009d197e8e6f29caff6b78a9c9c87ae2909 (diff)
downloadslixmpp-694673b9bdc108ae109efd4dafa8893a22952b94.tar.gz
slixmpp-694673b9bdc108ae109efd4dafa8893a22952b94.tar.bz2
slixmpp-694673b9bdc108ae109efd4dafa8893a22952b94.tar.xz
slixmpp-694673b9bdc108ae109efd4dafa8893a22952b94.zip
Merge branch 'develop' into stream_features
Diffstat (limited to 'tests')
-rw-r--r--tests/test_stream_xep_0249.py64
1 files changed, 64 insertions, 0 deletions
diff --git a/tests/test_stream_xep_0249.py b/tests/test_stream_xep_0249.py
new file mode 100644
index 00000000..f49d1f7e
--- /dev/null
+++ b/tests/test_stream_xep_0249.py
@@ -0,0 +1,64 @@
+import sys
+import time
+import threading
+
+from sleekxmpp.test import *
+from sleekxmpp.xmlstream import ElementBase
+
+
+class TestStreamDirectInvite(SleekTest):
+
+ """
+ Test using the XEP-0249 plugin.
+ """
+
+ def tearDown(self):
+ sys.excepthook = sys.__excepthook__
+ self.stream_close()
+
+ def testReceiveInvite(self):
+ self.stream_start(mode='client',
+ plugins=['xep_0030',
+ 'xep_0249'])
+
+ events = []
+
+ def handle_invite(msg):
+ events.append(True)
+
+ self.xmpp.add_event_handler('groupchat_direct_invite',
+ handle_invite)
+
+ self.recv("""
+ <message>
+ <x xmlns="jabber:x:conference"
+ jid="sleek@conference.jabber.org"
+ password="foo"
+ reason="For testing" />
+ </message>
+ """)
+
+ time.sleep(.5)
+
+ self.failUnless(events == [True],
+ "Event not raised: %s" % events)
+
+ def testSentDirectInvite(self):
+ self.stream_start(mode='client',
+ plugins=['xep_0030',
+ 'xep_0249'])
+
+ self.xmpp['xep_0249'].send_invitation('user@example.com',
+ 'sleek@conference.jabber.org',
+ reason='Need to test Sleek')
+
+ self.send("""
+ <message to="user@example.com">
+ <x xmlns="jabber:x:conference"
+ jid="sleek@conference.jabber.org"
+ reason="Need to test Sleek" />
+ </message>
+ """)
+
+
+suite = unittest.TestLoader().loadTestsFromTestCase(TestStreamDirectInvite)