private String dumpResults(List<MessageCounterInfo> results) { StringBuilder builder = new StringBuilder("\n"); for (int i = 0; i < results.size(); i++) { builder.append("result[" + i + "]: " + results.get(i).getCountDelta() + " " + results.get(i).getCount() + "\n"); } return builder.toString(); }
@Override public void run() { if (stopFlag.get()) { return; } try { String result = queueControl.listMessageCounter(); MessageCounterInfo info = MessageCounterInfo.fromJSON(result); if (info.getCountDelta() != 0) { System.out.println("non zero value got ---> " + info.getCountDelta()); } results.add(info); resultLatch.countDown(); if (info.getCountDelta() < 0) { //stop and make the test finish quick stopFlag.set(true); while (resultLatch.getCount() > 0) { resultLatch.countDown(); } } } catch (Exception e) { e.printStackTrace(); } finally { if (!stopFlag.get()) { timer1.schedule(new MessageCounterCollector(this.queueControl, resultLatch), 200); } } } }
assertTrue("countDelta should be positive " + info.getCountDelta() + dumpResults(results), info.getCountDelta() >= 0);
Assert.assertEquals(1, info.getDepthDelta()); Assert.assertEquals(1, info.getCount()); Assert.assertEquals(1, info.getCountDelta()); Assert.assertEquals(-1, info.getDepthDelta()); Assert.assertEquals(1, info.getCount()); Assert.assertEquals(0, info.getCountDelta()); Assert.assertEquals(0, info.getDepthDelta()); Assert.assertEquals(0, info.getCount()); Assert.assertEquals(0, info.getCountDelta());
Assert.assertEquals(1, info.getDepthDelta()); Assert.assertEquals(1, info.getCount()); Assert.assertEquals(1, info.getCountDelta()); Assert.assertEquals(1, info.getDepthDelta()); Assert.assertEquals(2, info.getCount()); Assert.assertEquals(1, info.getCountDelta()); Assert.assertEquals(-2, info.getDepthDelta()); Assert.assertEquals(2, info.getCount()); Assert.assertEquals(0, info.getCountDelta());