assertTrue(srp.getNumMaxDelayRetries() == 14);
assertTrue(srp.getNumMinDelayRetries() == 13);
assertTrue(srp.getNumNoDelayRetries() == 15);
assertTrue(srp.getBackOffFunction() == CnsBackoffFunction.geometric);
CNSThrottlePolicy dtp = subpolicy.getDefaultThrottlePolicy();
assertTrue(dtp != null);
assertTrue(dtp.getMaxReceivesPerSecond() == 5);
assertTrue(subpolicy.isDisableSubscriptionOverrides() == false);
JSONObject json2 = new JSONObject(jsonStr2);
CNSTopicDeliveryPolicy subpolicy2 = new CNSTopicDeliveryPolicy(json2);
CNSRetryPolicy hrp2 = subpolicy2.getDefaultHealthyRetryPolicy();
logger.debug("hrp2: " + hrp2.toString());
assertTrue("minDelayTarget != 1", hrp2.getMinDelayTarget() == 1);
assertTrue(hrp2.getMaxDelayTarget() == 2);
assertTrue(hrp2.getNumRetries() == 17);
assertTrue(hrp2.getNumMaxDelayRetries() == 4);
assertTrue(hrp2.getNumMinDelayRetries() == 6);
assertTrue(hrp2.getNumNoDelayRetries() == 7);
assertTrue(hrp2.getBackOffFunction() == CnsBackoffFunction.linear);
assertTrue(subpolicy2.getDefaultSicklyRetryPolicy() == null);
CNSThrottlePolicy dtp2 = subpolicy2.getDefaultThrottlePolicy();
assertTrue(dtp2 != null);
assertTrue(dtp2.getMaxReceivesPerSecond() == null);
assertTrue(subpolicy2.isDisableSubscriptionOverrides() == true);
//Default constructor
CNSTopicDeliveryPolicy subpolicy3 = new CNSTopicDeliveryPolicy();
assertTrue(subpolicy3 != null);
logger.debug("subpolicy3: " + subpolicy3.toString());
CNSRetryPolicy hrp3 = subpolicy3.getDefaultHealthyRetryPolicy();
assertTrue(hrp3.getMinDelayTarget() == 20);
assertTrue(hrp3.getMaxDelayTarget() == 20);
assertTrue(hrp3.getNumRetries() == 3);
assertTrue(hrp3.getNumMaxDelayRetries() == 0);
assertTrue(hrp3.getNumMinDelayRetries() == 0);
assertTrue(hrp3.getNumNoDelayRetries() == 0);
assertTrue(hrp3.getBackOffFunction() == CnsBackoffFunction.linear);
assertTrue(subpolicy3.getDefaultSicklyRetryPolicy() == null);
CNSThrottlePolicy dtp3 = subpolicy3.getDefaultThrottlePolicy();
assertTrue(dtp3 != null);
assertTrue(dtp3.getMaxReceivesPerSecond() == null);
assertTrue(subpolicy3.isDisableSubscriptionOverrides() == false);
//Default constructor
JSONObject json3 = new JSONObject(jsonStr3);
CNSTopicDeliveryPolicy subpolicy4 = new CNSTopicDeliveryPolicy(json3);
assertTrue(subpolicy4 != null);
logger.debug("subpolicy4: " + subpolicy4.toString());
CNSRetryPolicy hrp4 = subpolicy4.getDefaultHealthyRetryPolicy();
assertTrue(hrp4.getMinDelayTarget() == 20);
assertTrue(hrp4.getMaxDelayTarget() == 20);
assertTrue(hrp4.getNumRetries() == 3);
assertTrue(hrp4.getNumMaxDelayRetries() == 0);
assertTrue(hrp4.getNumMinDelayRetries() == 0);
assertTrue(hrp4.getNumNoDelayRetries() == 0);
assertTrue(hrp4.getBackOffFunction() == CnsBackoffFunction.linear);
assertTrue(subpolicy4.getDefaultSicklyRetryPolicy() == null);
CNSThrottlePolicy dtp4 = subpolicy4.getDefaultThrottlePolicy();
assertTrue(dtp4 != null);
assertTrue(dtp4.getMaxReceivesPerSecond() == null);
assertTrue(subpolicy4.isDisableSubscriptionOverrides() == true);
//Default constructor
boolean exceptionOccured = false;
try {