2013-07-26 11:02:26 +00:00
|
|
|
import unittest
|
2014-07-17 12:19:04 +00:00
|
|
|
from slixmpp import Message
|
|
|
|
from slixmpp.test import SlixTest
|
|
|
|
import slixmpp.plugins.xep_0085 as xep_0085
|
|
|
|
from slixmpp.xmlstream import register_stanza_plugin
|
2013-07-26 11:02:26 +00:00
|
|
|
|
2010-05-31 17:24:14 +00:00
|
|
|
|
2014-07-17 12:19:04 +00:00
|
|
|
class TestChatStates(SlixTest):
|
2010-05-31 17:24:14 +00:00
|
|
|
|
2010-08-06 00:23:07 +00:00
|
|
|
def setUp(self):
|
2012-02-20 04:28:31 +00:00
|
|
|
register_stanza_plugin(Message, xep_0085.stanza.Active)
|
|
|
|
register_stanza_plugin(Message, xep_0085.stanza.Composing)
|
|
|
|
register_stanza_plugin(Message, xep_0085.stanza.Gone)
|
|
|
|
register_stanza_plugin(Message, xep_0085.stanza.Inactive)
|
|
|
|
register_stanza_plugin(Message, xep_0085.stanza.Paused)
|
2010-08-06 00:23:07 +00:00
|
|
|
|
|
|
|
def testCreateChatState(self):
|
|
|
|
"""Testing creating chat states."""
|
|
|
|
|
|
|
|
xmlstring = """
|
|
|
|
<message>
|
|
|
|
<%s xmlns="http://jabber.org/protocol/chatstates" />
|
|
|
|
</message>
|
|
|
|
"""
|
|
|
|
|
|
|
|
msg = self.Message()
|
|
|
|
|
2011-02-24 17:10:29 +00:00
|
|
|
self.assertEqual(msg['chat_state'], '')
|
|
|
|
self.check(msg, "<message />", use_values=False)
|
2010-08-06 00:23:07 +00:00
|
|
|
|
2011-02-24 17:10:29 +00:00
|
|
|
msg['chat_state'] = 'active'
|
|
|
|
self.check(msg, xmlstring % 'active', use_values=False)
|
2010-08-06 00:23:07 +00:00
|
|
|
|
2011-02-24 17:10:29 +00:00
|
|
|
msg['chat_state'] = 'composing'
|
|
|
|
self.check(msg, xmlstring % 'composing', use_values=False)
|
2010-08-06 00:23:07 +00:00
|
|
|
|
2011-02-24 17:10:29 +00:00
|
|
|
msg['chat_state'] = 'gone'
|
|
|
|
self.check(msg, xmlstring % 'gone', use_values=False)
|
2010-08-06 00:23:07 +00:00
|
|
|
|
2011-02-24 17:10:29 +00:00
|
|
|
msg['chat_state'] = 'inactive'
|
|
|
|
self.check(msg, xmlstring % 'inactive', use_values=False)
|
|
|
|
|
|
|
|
msg['chat_state'] = 'paused'
|
|
|
|
self.check(msg, xmlstring % 'paused', use_values=False)
|
|
|
|
|
|
|
|
del msg['chat_state']
|
|
|
|
self.check(msg, "<message />")
|
2010-05-31 17:24:14 +00:00
|
|
|
|
2010-06-27 21:40:06 +00:00
|
|
|
suite = unittest.TestLoader().loadTestsFromTestCase(TestChatStates)
|