Esempio n. 1
0
 def __init__(self, bot_class=IRCBot, password=None):
     log("Connecting to IRC")
     self._message_queue = ThreadedMessageQueue()
     self._child_thread = _IRCThread(self._message_queue,
                                     bot_class,
                                     password=password)
     self._child_thread.start()
 def test_basic(self):
     queue = ThreadedMessageQueue()
     delegate = TestDelegate()
     pump = MessagePump(delegate, queue)
     self.assertEqual(delegate.log, [
         'schedule'
     ])
     delegate.callback()
     queue.post("Hello")
     queue.post("There")
     delegate.callback()
     self.assertEqual(delegate.log, [
         'schedule',
         'schedule',
         'message_available: Hello',
         'message_available: There',
         'schedule'
     ])
     queue.post("More")
     queue.post("Messages")
     queue.stop()
     delegate.callback()
     self.assertEqual(delegate.log, [
         'schedule',
         'schedule',
         'message_available: Hello',
         'message_available: There',
         'schedule',
         'message_available: More',
         'message_available: Messages',
         'final_message_delivered'
     ])
Esempio n. 3
0
class IRCProxy(object):
    def __init__(self, bot_class=IRCBot, password=None):
        log("Connecting to IRC")
        self._message_queue = ThreadedMessageQueue()
        self._child_thread = _IRCThread(self._message_queue, bot_class, password=password)
        self._child_thread.start()

    def post(self, message):
        self._message_queue.post(message)

    def disconnect(self):
        log("Disconnecting from IRC...")
        self._message_queue.stop()
        self._child_thread.join()
Esempio n. 4
0
class IRCProxy(object):
    def __init__(self, bot_class=IRCBot, password=None):
        log("Connecting to IRC")
        self._message_queue = ThreadedMessageQueue()
        self._child_thread = _IRCThread(self._message_queue,
                                        bot_class,
                                        password=password)
        self._child_thread.start()

    def post(self, message):
        self._message_queue.post(message)

    def disconnect(self):
        log("Disconnecting from IRC...")
        self._message_queue.stop()
        self._child_thread.join()
Esempio n. 5
0
 def test_basic(self):
     queue = ThreadedMessageQueue()
     delegate = TestDelegate()
     pump = MessagePump(delegate, queue)
     self.assertEqual(delegate.log, ['schedule'])
     delegate.callback()
     queue.post("Hello")
     queue.post("There")
     delegate.callback()
     self.assertEqual(delegate.log, [
         'schedule', 'schedule', 'message_available: Hello',
         'message_available: There', 'schedule'
     ])
     queue.post("More")
     queue.post("Messages")
     queue.stop()
     delegate.callback()
     self.assertEqual(delegate.log, [
         'schedule', 'schedule', 'message_available: Hello',
         'message_available: There', 'schedule', 'message_available: More',
         'message_available: Messages', 'final_message_delivered'
     ])
Esempio n. 6
0
 def __init__(self, bot_class=IRCBot, password=None):
     log("Connecting to IRC")
     self._message_queue = ThreadedMessageQueue()
     self._child_thread = _IRCThread(self._message_queue, bot_class, password=password)
     self._child_thread.start()
Esempio n. 7
0
 def test_basic(self):
     queue = ThreadedMessageQueue()
     queue.post("Hello")
     queue.post("There")
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, ["Hello", "There"])
     self.assertTrue(is_running)
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, [])
     self.assertTrue(is_running)
     queue.post("More")
     queue.stop()
     queue.post("Messages")
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, ["More", "Messages"])
     self.assertFalse(is_running)
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, [])
     self.assertFalse(is_running)
 def test_basic(self):
     queue = ThreadedMessageQueue()
     queue.post("Hello")
     queue.post("There")
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, ["Hello", "There"])
     self.assertTrue(is_running)
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, [])
     self.assertTrue(is_running)
     queue.post("More")
     queue.stop()
     queue.post("Messages")
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, ["More", "Messages"])
     self.assertFalse(is_running)
     (messages, is_running) = queue.take_all()
     self.assertEqual(messages, [])
     self.assertFalse(is_running)