test_multipart.py 944 B

1234567891011121314151617181920212223242526272829303132333435
  1. # Copyright (C) PyZMQ Developers
  2. # Distributed under the terms of the Modified BSD License.
  3. import zmq
  4. from zmq.tests import BaseZMQTestCase, SkipTest, have_gevent, GreenTest
  5. class TestMultipart(BaseZMQTestCase):
  6. def test_router_dealer(self):
  7. router, dealer = self.create_bound_pair(zmq.ROUTER, zmq.DEALER)
  8. msg1 = b'message1'
  9. dealer.send(msg1)
  10. ident = self.recv(router)
  11. more = router.rcvmore
  12. self.assertEqual(more, True)
  13. msg2 = self.recv(router)
  14. self.assertEqual(msg1, msg2)
  15. more = router.rcvmore
  16. self.assertEqual(more, False)
  17. def test_basic_multipart(self):
  18. a,b = self.create_bound_pair(zmq.PAIR, zmq.PAIR)
  19. msg = [ b'hi', b'there', b'b']
  20. a.send_multipart(msg)
  21. recvd = b.recv_multipart()
  22. self.assertEqual(msg, recvd)
  23. if have_gevent:
  24. class TestMultipartGreen(GreenTest, TestMultipart):
  25. pass