summaryrefslogtreecommitdiff
path: root/tests/test_stream.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_stream.py')
-rw-r--r--tests/test_stream.py60
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/test_stream.py b/tests/test_stream.py
new file mode 100644
index 00000000..3fbf86e6
--- /dev/null
+++ b/tests/test_stream.py
@@ -0,0 +1,60 @@
+from sleekxmpp.test import *
+import sleekxmpp.plugins.xep_0033 as xep_0033
+
+
+class TestStreamTester(SleekTest):
+ """
+ Test that we can simulate and test a stanza stream.
+ """
+
+ def tearDown(self):
+ self.stream_close()
+
+ def testClientEcho(self):
+ """Test that we can interact with a ClientXMPP instance."""
+ self.stream_start(mode='client')
+
+ def echo(msg):
+ msg.reply('Thanks for sending: %(body)s' % msg).send()
+
+ self.xmpp.add_event_handler('message', echo)
+
+ self.stream_recv("""
+ <message to="tester@localhost" from="user@localhost">
+ <body>Hi!</body>
+ </message>
+ """)
+
+ self.stream_send_message("""
+ <message to="user@localhost">
+ <body>Thanks for sending: Hi!</body>
+ </message>
+ """)
+
+ def testComponentEcho(self):
+ """Test that we can interact with a ComponentXMPP instance."""
+ self.stream_start(mode='component')
+
+ def echo(msg):
+ msg.reply('Thanks for sending: %(body)s' % msg).send()
+
+ self.xmpp.add_event_handler('message', echo)
+
+ self.stream_recv("""
+ <message to="tester.localhost" from="user@localhost">
+ <body>Hi!</body>
+ </message>
+ """)
+
+ self.stream_send_message("""
+ <message to="user@localhost" from="tester.localhost">
+ <body>Thanks for sending: Hi!</body>
+ </message>
+ """)
+
+ def testSendStreamHeader(self):
+ """Test that we can check a sent stream header."""
+ self.stream_start(mode='client', skip=False)
+ self.stream_send_header(sto='localhost')
+
+suite = unittest.TestLoader().loadTestsFromTestCase(TestStreamTester)