from sleekxmpp.test import * from sleekxmpp.stanza.message import Message from sleekxmpp.stanza.htmlim import HTMLIM class TestMessageStanzas(SleekTest): def setUp(self): register_stanza_plugin(Message, HTMLIM) def testGroupchatReplyRegression(self): "Regression groupchat reply should be to barejid" msg = self.Message() msg['to'] = 'me@myserver.tld' msg['from'] = 'room@someservice.someserver.tld/somenick' msg['type'] = 'groupchat' msg['body'] = "this is a message" msg.reply() self.failUnless(str(msg['to']) == 'room@someservice.someserver.tld') def testAttribProperty(self): "Test attrib property returning self" msg = self.Message() msg.attrib.attrib.attrib['to'] = 'usr@server.tld' self.failUnless(str(msg['to']) == 'usr@server.tld') def testHTMLPlugin(self): "Test message/html/body stanza" msg = self.Message() msg['to'] = "" msg['body'] = "this is the plaintext message" msg['type'] = 'chat' p = ET.Element('{}p') p.text = "This is the htmlim message" msg['html']['body'] = p self.check_message(msg, """ this is the plaintext message

This is the htmlim message

""") def testNickPlugin(self): "Test message/nick/nick stanza." msg = self.Message() msg['nick']['nick'] = 'A nickname!' self.check_message(msg, """ A nickname! """) suite = unittest.TestLoader().loadTestsFromTestCase(TestMessageStanzas)