assertTrue("Deleting subscription node should have succeeded",
getNodeForSubscription(_subList, _sub3).delete());
assertNotNull("Should still have been a node present for the deleted 3rd subscription",
getNodeForSubscription(_subList, _sub3));
SubscriptionNodeIterator iter = _subList.iterator();
//verify the iterator returns the 1st subscriptions node
assertTrue("Iterator should have been able to advance", iter.advance());
assertEquals("Iterator returned unexpected SubscriptionNode", _sub1, iter.getNode().getSubscription());
//verify the iterator returns the 2nd subscriptions node
assertTrue("Iterator should have been able to advance", iter.advance());
assertEquals("Iterator returned unexpected SubscriptionNode", _sub2, iter.getNode().getSubscription());
//verify the iterator can no longer advance and does not return a subscription node
assertFalse("Iterator should not have been able to advance", iter.advance());
assertEquals("Iterator returned unexpected SubscriptionNode", null, iter.getNode());
}