From 48572ba0ee68195b39b932909fcb99a57c9cf826 Mon Sep 17 00:00:00 2001 From: "Rafael H. Schloming" Date: Thu, 12 Nov 2009 18:33:25 +0000 Subject: removed listeners in favor of next_receiver git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@835488 13f79535-47bb-0310-9956-ffa450edef68 --- python/qpid/tests/messaging.py | 45 +++++++++++++++++++++++++++--------------- 1 file changed, 29 insertions(+), 16 deletions(-) (limited to 'python/qpid/tests') diff --git a/python/qpid/tests/messaging.py b/python/qpid/tests/messaging.py index 13638638fb..db9e15a01a 100644 --- a/python/qpid/tests/messaging.py +++ b/python/qpid/tests/messaging.py @@ -228,6 +228,35 @@ class SessionTests(Base): assert msg.content == content self.ssn.acknowledge(msg) + def testNextReceiver(self): + ADDR = 'test-next-rcv-queue {create: always}' + rcv1 = self.ssn.receiver(ADDR, capacity=UNLIMITED) + rcv2 = self.ssn.receiver(ADDR, capacity=UNLIMITED) + rcv3 = self.ssn.receiver(ADDR, capacity=UNLIMITED) + + # XXX: this won't work if it is before the receiver creation + self.ssn.start() + + snd = self.ssn.sender(ADDR) + + msgs = [] + for i in range(10): + content = self.content("testNextReceiver", i) + snd.send(content) + msgs.append(content) + + fetched = [] + try: + while True: + rcv = self.ssn.next_receiver(timeout=self.delay()) + assert rcv in (rcv1, rcv2, rcv3) + assert rcv.pending() > 0 + fetched.append(rcv.fetch().content) + except Empty: + pass + assert msgs == fetched, "expecting %s, got %s" % (msgs, fetched) + self.ssn.acknowledge() + def testStart(self): START_Q = 'test-start-queue {create: always}' rcv = self.ssn.receiver(START_Q) @@ -437,22 +466,6 @@ class ReceiverTests(Base): self.snd.send(content) return content - def testListen(self): - msgs = Queue() - def listener(m): - msgs.put(m) - self.ssn.acknowledge(m) - self.rcv.listen(listener) - content = self.send("testListen") - try: - msg = msgs.get(timeout=self.delay()) - assert False, "did not expect message: %s" % msg - except QueueEmpty: - pass - self.rcv.start() - msg = msgs.get(timeout=self.delay()) - assert msg.content == content - def testFetch(self): try: msg = self.rcv.fetch(0) -- cgit v1.2.1