def test_zmsg(): m = zmsg.new() foo = zframe.new('foo') zmsg.push(m, foo) assert zmsg.first(m) == foo bar = zframe.new('bar') zmsg.push(m, bar) assert zmsg.first(m) == bar assert zmsg.last(m) == foo zmsg.append(m, zframe.new('ding')) assert zframe.data(zmsg.last(m)) == 'ding' ctx = zctx.new() p = zsocket.new(ctx, zmq.PUB) u = zsocket.new(ctx, zmq.SUB) zsockopt.set_subscribe(u, '') zsocket.bind(p, 'inproc://qer') zsocket.connect(u, 'inproc://qer') zmsg.send(m, p) zsocket.poll(u, 1) n = zmsg.recv(u) assert zmsg.size(n) == 3 assert zframe.data(zmsg.next(n)) == 'bar' assert zframe.data(zmsg.next(n)) == 'foo' assert zframe.data(zmsg.next(n)) == 'ding' assert zmsg.next(n) is None
def test_zpoller(): ctx = zctx.new() p = zsocket.new(ctx, zmq.PUB) zsocket.bind(p, 'inproc://sdf') s = zsocket.new(ctx, zmq.SUB) zsockopt.set_subscribe(s, '') zsocket.connect(s, 'inproc://sdf') s2 = zsocket.new(ctx, zmq.SUB) zsockopt.set_subscribe(s2, '') zsocket.connect(s2, 'inproc://sdf') zstr.send(p, 'foo') z = zpoller.new(s)