def test_broadcast_methods_should_raise_RuntimeError_if_not_connected_to_broadcast(self): client = Client() client.connect(api=API_ADDRESS) with self.assertRaises(RuntimeError): client.broadcast_subscribe('42') with self.assertRaises(RuntimeError): client.broadcast_unsubscribe('42') with self.assertRaises(RuntimeError): client.broadcast_poll(timeout=1) # milliseconds with self.assertRaises(RuntimeError): client.broadcast_receive() with self.assertRaises(RuntimeError): client.disconnect_broadcast()
def test_broadcast_unsubscribe(self): client = Client() client.connect(broadcast=BROADCAST_ADDRESS) client.broadcast_subscribe('spam') time.sleep(TIMEOUT / 1000.0) # wait for subscribe to take effect self.broadcast.send('spam eggs ham') self.assertTrue(client.broadcast_poll(TIMEOUT)) self.assertEqual(client.broadcast_receive(), 'spam eggs ham') client.broadcast_unsubscribe('spam') self.broadcast.send('spam eggs ham') self.assertFalse(client.broadcast_poll(TIMEOUT))