diff options
author | mathieui <mathieui@mathieui.net> | 2021-03-09 21:20:14 +0100 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2021-03-09 21:20:14 +0100 |
commit | 7c86c43fc74dd4786ff741386484b58d1c396e8b (patch) | |
tree | 3f6be757fedc9cd515b635643a50e9afd8b20b77 /itests/test_mam.py | |
parent | 8a1f9bec561466008553e3d2e67ad9391f519a0c (diff) | |
parent | 0115feaa31ef998b59da98c99c523ad34ed92651 (diff) | |
download | slixmpp-7c86c43fc74dd4786ff741386484b58d1c396e8b.tar.gz slixmpp-7c86c43fc74dd4786ff741386484b58d1c396e8b.tar.bz2 slixmpp-7c86c43fc74dd4786ff741386484b58d1c396e8b.tar.xz slixmpp-7c86c43fc74dd4786ff741386484b58d1c396e8b.zip |
Merge branch 'mam-update' into 'master'
MAM Update
See merge request poezio/slixmpp!149
Diffstat (limited to 'itests/test_mam.py')
-rw-r--r-- | itests/test_mam.py | 45 |
1 files changed, 41 insertions, 4 deletions
diff --git a/itests/test_mam.py b/itests/test_mam.py index f61bc1e6..d10241bd 100644 --- a/itests/test_mam.py +++ b/itests/test_mam.py @@ -22,11 +22,14 @@ class TestMAM(SlixIntegration): """Make sure we can get messages from our archive""" # send messages first tok = randint(1, 999999) - self.clients[0].make_message(mto=self.clients[1].boundjid, mbody='coucou').send() + self.clients[0].make_message( + mto=self.clients[1].boundjid, + mbody=f'coucou {tok}' + ).send() await self.clients[1].wait_until('message') self.clients[1].make_message( mto=self.clients[0].boundjid, - mbody='coucou coucou %s' % tok, + mbody=f'coucou coucou {tok}', ).send() await self.clients[0].wait_until('message') @@ -48,8 +51,42 @@ class TestMAM(SlixIntegration): if count >= 2: break - self.assertEqual(msgs[0]['body'], 'coucou') - self.assertEqual(msgs[1]['body'], 'coucou coucou %s' % tok) + self.assertEqual(msgs[0]['body'], f'coucou {tok}') + self.assertEqual(msgs[1]['body'], f'coucou coucou {tok}') + + async def test_mam_iterate(self): + """Make sure we can iterate over messages from our archive""" + # send messages first + tok = randint(1, 999999) + self.clients[0].make_message( + mto=self.clients[1].boundjid, + mbody=f'coucou {tok}' + ).send() + await self.clients[1].wait_until('message') + self.clients[1].make_message( + mto=self.clients[0].boundjid, + mbody='coucou coucou %s' % tok, + ).send() + await self.clients[0].wait_until('message') + + # Get archive + retrieve = self.clients[0]['xep_0313'].iterate( + with_jid=JID(self.envjid('CI_ACCOUNT2')), + reverse=True, + rsm={'max': 1} + ) + msgs = [] + count = 0 + async for msg in retrieve: + msgs.append( + msg['mam_result']['forwarded']['stanza'] + ) + count += 1 + if count >= 2: + break + + self.assertEqual(msgs[0]['body'], f'coucou coucou {tok}') + self.assertEqual(msgs[1]['body'], f'coucou {tok}') suite = unittest.TestLoader().loadTestsFromTestCase(TestMAM) |