def test_broadcast_data(self): server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_socket.setblocking(0) server_socket.bind(('localhost', 8001)) server_socket.listen(1) test_message = 'test_message' # Verify that broadcast data is sent via socket CommunicationsInterface.broadcast_data(test_message, [('localhost', 8001)]) readable, writable, exceptional = select.select( [server_socket], [], [], 1) self.assertEqual(len(readable), 1) (client_socket, address) = readable[0].accept() received_data = '' while True: data = client_socket.recv(1024) received_data += data if not data: break self.assertEqual(received_data, test_message)
def broadcast_event(self, event): """ Broadcast an Event to all peers. If this EventManager is listening, the Event will be broadcast to itself as well. Keyword arguments: event -- Event to broadcast """ data = self.serialize_event(event) CommunicationsInterface.broadcast_data(data, self.peers)
def test_broadcast_data_error(self): # No exception should be raised here CommunicationsInterface.broadcast_data('test_message', [('localhost', 8001)])
def broadcast_event(self, event): data = self.serialize_event(event) CommunicationsInterface.broadcast_data(data, self.peers)