Exemple #1
0
    def test_listen(self):
        listen_port = 8000
        test_message = pickle.dumps('test_message')
        event_manager = EventManager([], listen_port);

        # Wait for thread to be ready
        while not event_manager.is_listening():
            time.sleep(0)

        # Mock the event_received method
        m = mox.Mox()
        mock_event_received = m.CreateMockAnything()
        event_manager.event_received = new.instancemethod(mock_event_received,
                                                          event_manager)
        mock_event_received(event_manager, 'test_message')
        m.ReplayAll()

        s = socket.create_connection((socket.gethostname(), listen_port))
        s.sendall(test_message)
        s.shutdown(socket.SHUT_RDWR)
        s.close()

        event_manager.shutdown()
        
        # Make sure event_received was called on the EventManager
        m.VerifyAll()