diff options
author | mathieui <mathieui@mathieui.net> | 2021-04-30 19:28:12 +0200 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2021-04-30 19:33:23 +0200 |
commit | aaab58d229379492e4a2d5c9972db793662a29da (patch) | |
tree | 66193a366bc973261eebcc009e4477707daff22c /itests | |
parent | 0b5f6cb0a8e86c2e0b76d5f7ba1ae4f2ad801ebc (diff) | |
download | slixmpp-aaab58d229379492e4a2d5c9972db793662a29da.tar.gz slixmpp-aaab58d229379492e4a2d5c9972db793662a29da.tar.bz2 slixmpp-aaab58d229379492e4a2d5c9972db793662a29da.tar.xz slixmpp-aaab58d229379492e4a2d5c9972db793662a29da.zip |
itests: add a simple slow filter test
Diffstat (limited to 'itests')
-rw-r--r-- | itests/test_slow_filters.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/itests/test_slow_filters.py b/itests/test_slow_filters.py new file mode 100644 index 00000000..254a6b03 --- /dev/null +++ b/itests/test_slow_filters.py @@ -0,0 +1,49 @@ +import asyncio +import unittest +from slixmpp.test.integration import SlixIntegration +from slixmpp import Message + + +class TestSlowFilter(SlixIntegration): + async def asyncSetUp(self): + await super().asyncSetUp() + self.add_client( + self.envjid('CI_ACCOUNT1'), + self.envstr('CI_ACCOUNT1_PASSWORD'), + ) + self.add_client( + self.envjid('CI_ACCOUNT2'), + self.envstr('CI_ACCOUNT2_PASSWORD'), + ) + await self.connect_clients() + + async def test_filters(self): + """Make sure filters work""" + def add_a(stanza): + if isinstance(stanza, Message): + stanza['body'] = stanza['body'] + ' a' + return stanza + + async def add_b(stanza): + if isinstance(stanza, Message): + stanza['body'] = stanza['body'] + ' b' + return stanza + + async def add_c_wait(stanza): + if isinstance(stanza, Message): + await asyncio.sleep(2) + stanza['body'] = stanza['body'] + ' c' + return stanza + self.clients[0].add_filter('out', add_a) + self.clients[0].add_filter('out', add_b) + self.clients[0].add_filter('out', add_c_wait) + body = 'Msg body' + msg = self.clients[0].make_message( + mto=self.clients[1].boundjid, mbody=body, + ) + msg.send() + message = await self.clients[1].wait_until('message') + self.assertEqual(message['body'], body + ' a b c') + + +suite = unittest.TestLoader().loadTestsFromTestCase(TestSlowFilter) |