slixmpp/tests/test_chatstates.py

44 lines
1.3 KiB
Python

from sleektest import *
import sleekxmpp.plugins.xep_0085 as xep_0085
class TestChatStates(SleekTest):
def setUp(self):
self.stanzaPlugin(Message, xep_0085.Active)
self.stanzaPlugin(Message, xep_0085.Composing)
self.stanzaPlugin(Message, xep_0085.Gone)
self.stanzaPlugin(Message, xep_0085.Inactive)
self.stanzaPlugin(Message, xep_0085.Paused)
def testCreateChatState(self):
"""Testing creating chat states."""
xmlstring = """
<message>
<%s xmlns="http://jabber.org/protocol/chatstates" />
</message>
"""
msg = self.Message()
msg['chat_state'].active()
self.checkMessage(msg, xmlstring % 'active',
use_values=False)
msg['chat_state'].composing()
self.checkMessage(msg, xmlstring % 'composing',
use_values=False)
msg['chat_state'].gone()
self.checkMessage(msg, xmlstring % 'gone',
use_values=False)
msg['chat_state'].inactive()
self.checkMessage(msg, xmlstring % 'inactive',
use_values=False)
msg['chat_state'].paused()
self.checkMessage(msg, xmlstring % 'paused',
use_values=False)
suite = unittest.TestLoader().loadTestsFromTestCase(TestChatStates)