in qpid_tests/broker_0_10/stats.py [0:0]
def test_transactional_enqueues_dequeues(self):
agent = self.setup_access()
start_broker = agent.getBroker()
sess = self.setup_session(True)
tx = sess.sender("tx_enqueue_test;{create:always,delete:always}")
tx.send("0123456789")
tx.send("0123456789")
tx.send("0123456789")
tx.send("0123456789")
overhead = 41 #overhead added to message from headers
queue = agent.getQueue("tx_enqueue_test")
self.failUnless(queue, "expected a valid queue object")
self.assertEqual(queue.msgTotalEnqueues, 0, "msgTotalEnqueues pre-tx-commit")
self.assertEqual(queue.byteTotalEnqueues, 0, "byteTotalEnqueues pre-tx-commit")
self.assertEqual(queue.msgTxnEnqueues, 0, "msgTxnEnqueues pre-tx-commit")
self.assertEqual(queue.byteTxnEnqueues, 0, "byteTxnEnqueues pre-tx-commit")
self.assertEqual(queue.msgTotalDequeues, 0, "msgTotalDequeues pre-tx-commit")
self.assertEqual(queue.byteTotalDequeues, 0, "byteTotalDequeues pre-tx-commit")
self.assertEqual(queue.msgTxnDequeues, 0, "msgTxnDequeues pre-tx-commit")
self.assertEqual(queue.byteTxnDequeues, 0, "byteTxnDequeues pre-tx-commit")
sess.commit()
queue.update()
self.assertEqual(queue.msgTotalEnqueues, 4, "msgTotalEnqueues post-tx-commit")
self.assertEqual(queue.byteTotalEnqueues, 40+(4*overhead), "byteTotalEnqueues post-tx-commit")
self.assertEqual(queue.msgTxnEnqueues, 4, "msgTxnEnqueues post-tx-commit")
self.assertEqual(queue.byteTxnEnqueues, 40+(4*overhead), "byteTxnEnqueues post-tx-commit")
self.assertEqual(queue.msgTotalDequeues, 0, "msgTotalDequeues post-tx-commit")
self.assertEqual(queue.byteTotalDequeues, 0, "byteTotalDequeues post-tx-commit")
self.assertEqual(queue.msgTxnDequeues, 0, "msgTxnDequeues post-tx-commit")
self.assertEqual(queue.byteTxnDequeues, 0, "byteTxnDequeues post-tx-commit")
sess2 = self.setup_session(True)
rx = sess2.receiver("tx_enqueue_test")
m = rx.fetch()
m = rx.fetch()
m = rx.fetch()
m = rx.fetch()
queue.update()
self.assertEqual(queue.msgTotalEnqueues, 4, "msgTotalEnqueues pre-rx-commit")
self.assertEqual(queue.byteTotalEnqueues, 40+(4*overhead), "byteTotalEnqueues pre-rx-commit")
self.assertEqual(queue.msgTxnEnqueues, 4, "msgTxnEnqueues pre-rx-commit")
self.assertEqual(queue.byteTxnEnqueues, 40+(4*overhead), "byteTxnEnqueues pre-rx-commit")
self.assertEqual(queue.msgTotalDequeues, 0, "msgTotalDequeues pre-rx-commit")
self.assertEqual(queue.byteTotalDequeues, 0, "byteTotalDequeues pre-rx-commit")
self.assertEqual(queue.msgTxnDequeues, 0, "msgTxnDequeues pre-rx-commit")
self.assertEqual(queue.byteTxnDequeues, 0, "byteTxnDequeues pre-rx-commit")
sess2.acknowledge()
sess2.commit()
queue.update()
self.assertEqual(queue.msgTotalEnqueues, 4, "msgTotalEnqueues post-rx-commit")
self.assertEqual(queue.byteTotalEnqueues, 40+(4*overhead), "byteTotalEnqueues post-rx-commit")
self.assertEqual(queue.msgTxnEnqueues, 4, "msgTxnEnqueues post-rx-commit")
self.assertEqual(queue.byteTxnEnqueues, 40+(4*overhead), "byteTxnEnqueues post-rx-commit")
self.assertEqual(queue.msgTotalDequeues, 4, "msgTotalDequeues post-rx-commit")
self.assertEqual(queue.byteTotalDequeues, 40+(4*overhead), "byteTotalDequeues post-rx-commit")
self.assertEqual(queue.msgTxnDequeues, 4, "msgTxnDequeues post-rx-commit")
self.assertEqual(queue.byteTxnDequeues, 40+(4*overhead), "byteTxnDequeues post-rx-commit")
sess.close()
sess2.close()
now_broker = agent.getBroker()
self.assertEqual(now_broker.msgTxnEnqueues - start_broker.msgTxnEnqueues, 4, "broker msgTxnEnqueues")
self.assertEqual(now_broker.byteTxnEnqueues - start_broker.byteTxnEnqueues, 40+(4*overhead), "broker byteTxnEnqueues")
self.assertEqual(now_broker.msgTxnDequeues - start_broker.msgTxnDequeues, 4, "broker msgTxnDequeues")
self.assertEqual(now_broker.byteTxnDequeues - start_broker.byteTxnDequeues, 40+(4*overhead), "broker byteTxnDequeues")