예제 #1
0
    def test_on_part(self, m_on_part):
        handler = MessageHandler()
        handler.add_script_module("tests.fixtures.script")

        event = handler.handle(self.PART_MESSAGE)

        self.assertTrue(m_on_part.called)
예제 #2
0
    def test_script_error_handling(self, m_on_part):
        m_on_part.side_effect = Exception("Should not bubble from handler")

        handler = MessageHandler()
        handler.add_script_module("tests.fixtures.script")

        event = handler.handle(self.PART_MESSAGE)
        self.assertTrue(m_on_part.called)
예제 #3
0
    def test_on_join(self, m_on_join):
        handler = MessageHandler()
        handler.add_script_module("tests.fixtures.script")

        test_message = ':[email protected] JOIN #secondtest '
        event = handler.handle(test_message)

        self.assertTrue(m_on_join.called)
예제 #4
0
    def test_script_calling(self, m_on_priv_message):
        handler = MessageHandler()
        handler.add_script_module("tests.fixtures.script")

        mock_event = IrcEvent({'content': 'some content', 'channel': '#channel', 'type': 'privmsg'})
        handler._event = mock_event
        handler._call_script_modules('on_priv_message', message="some message")

        m_on_priv_message.assert_called_with(mock_event, message="some message")
예제 #5
0
 def test_on_topic(self, m_handle_topic):
     test_message = ':[email protected] TOPIC #secondtest :a'
     handler = MessageHandler()
     event = handler.handle(test_message)
     self.assertTrue(m_handle_topic.called)
예제 #6
0
 def test_privmsg(self, m_priv_msg):
     test_message = ':[email protected] PRIVMSG #testserver :uujee'
     handler = MessageHandler()
     response = handler.handle(test_message)
     self.assertTrue(m_priv_msg.called)
예제 #7
0
 def test_end_of_motd(self):
     test_message = ':servercentral.il.us.quakenet.org 376 yaib :End of /MOTD command.'
     handler = MessageHandler()
     event = handler.handle(test_message)
     self.assertEquals(event.to_server[0].get_command(), "JOIN #testserver")
예제 #8
0
 def test_message_without_content(self, m_mode):
     test_message = ':[email protected] MODE yaib +i'
     handler = MessageHandler()
     response = handler.handle(test_message)
     self.assertTrue(m_mode.called)
예제 #9
0
 def test_ping_parsing(self):
     handler = MessageHandler()
     test_message = 'PING :687010916'
     event = handler.handle(test_message)
     self.assertEqual(event.to_server[0].get_command(), PongMessage(687010916).get_command())
예제 #10
0
 def test_notice_parsing(self, m_notice):
     handler = MessageHandler()
     test_message = ':servercentral.il.us.quakenet.org NOTICE yaib :on 1 ca 1(4) ft 20(20)'
     handler.handle(test_message)
     self.assertTrue(m_notice.called)