You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ta...@apache.org on 2016/05/23 17:22:42 UTC

qpid-jms git commit: https://issues.apache.org/jira/browse/QPIDJMS-177

Repository: qpid-jms
Updated Branches:
  refs/heads/master df2d911d4 -> 0251ae8ce


https://issues.apache.org/jira/browse/QPIDJMS-177

Adds some unit tests and fixes or improves a few minor things exposed in
the tests.

Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/0251ae8c
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/0251ae8c
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/0251ae8c

Branch: refs/heads/master
Commit: 0251ae8ce8cfea35d088fe60b89320cf3247f769
Parents: df2d911
Author: Timothy Bish <ta...@gmail.com>
Authored: Mon May 23 13:22:27 2016 -0400
Committer: Timothy Bish <ta...@gmail.com>
Committed: Mon May 23 13:22:27 2016 -0400

----------------------------------------------------------------------
 .../jms/policy/JmsDefaultPresettlePolicy.java   |  76 ++-
 .../apache/qpid/jms/JmsPrefetchPolicyTest.java  | 139 ------
 .../apache/qpid/jms/JmsTemporaryQueueTest.java  |   1 -
 .../apache/qpid/jms/JmsTemporaryTopicTest.java  |   1 -
 .../policy/JmsDefaultPrefetchPolicyTest.java    | 139 ++++++
 .../policy/JmsDefaultPresettlePolicyTest.java   | 459 +++++++++++++++++++
 .../policy/JmsDefaultRedeliveryPolicyTest.java  |  83 ++++
 7 files changed, 746 insertions(+), 152 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/main/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicy.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicy.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicy.java
index 95ca57c..8560750 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicy.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicy.java
@@ -57,10 +57,9 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
 
     @Override
     public boolean isConsumerPresttled(JmsSession session, JmsDestination destination) {
-
         if (session.isTransacted()) {
             return false;
-        } else if (presettleAll || presettleConsumers) {
+        } else if (destination != null && (presettleAll || presettleConsumers)) {
             return true;
         } else if (destination != null && destination.isQueue() && presettleQueueConsumers) {
             return true;
@@ -73,10 +72,9 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
 
     @Override
     public boolean isProducerPresttled(JmsSession session, JmsDestination destination) {
-
         if (presettleAll || presettleProducers) {
             return true;
-        } else if (session.isTransacted() && presettleTransactedProducers) {
+        } else if (destination != null && session.isTransacted() && presettleTransactedProducers) {
             return true;
         } else if (destination != null && destination.isQueue() && presettleQueueProducers) {
             return true;
@@ -109,7 +107,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleProducers setting for this policy.
      */
     public boolean isPresettleProducers() {
-        return presettleProducers;
+        return presettleAll || presettleProducers;
     }
 
     /**
@@ -127,7 +125,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleTopicProducers setting for this policy
      */
     public boolean isPresettleTopicProducers() {
-        return presettleTopicProducers;
+        return presettleAll || presettleProducers ||  presettleTopicProducers;
     }
 
     /**
@@ -147,7 +145,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleQueueSends setting for this policy
      */
     public boolean isPresettleQueueProducers() {
-        return presettleQueueProducers;
+        return presettleAll || presettleProducers ||  presettleQueueProducers;
     }
 
     /**
@@ -167,7 +165,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleTransactedSends setting for this policy
      */
     public boolean isPresettleTransactedProducers() {
-        return presettleTransactedProducers;
+        return presettleAll || presettleProducers || presettleTransactedProducers;
     }
 
     /**
@@ -184,7 +182,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleConsumers configuration value for this policy.
      */
     public boolean isPresettleConsumers() {
-        return presettleConsumers;
+        return presettleAll || presettleConsumers;
     }
 
     /**
@@ -202,7 +200,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleTopicConsumers setting for this policy.
      */
     public boolean isPresettleTopicConsumers() {
-        return presettleTopicConsumers;
+        return presettleAll || presettleConsumers ||  presettleTopicConsumers;
     }
 
     /**
@@ -220,7 +218,7 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
      * @return the presettleQueueConsumers setting for this policy.
      */
     public boolean isPresettleQueueConsumers() {
-        return presettleQueueConsumers;
+        return presettleAll || presettleConsumers || presettleQueueConsumers;
     }
 
     /**
@@ -233,4 +231,60 @@ public class JmsDefaultPresettlePolicy implements JmsPresettlePolicy {
     public void setPresettleQueueConsumers(boolean presettleQueueConsumers) {
         this.presettleQueueConsumers = presettleQueueConsumers;
     }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + (presettleAll ? 1231 : 1237);
+        result = prime * result + (presettleConsumers ? 1231 : 1237);
+        result = prime * result + (presettleProducers ? 1231 : 1237);
+        result = prime * result + (presettleQueueConsumers ? 1231 : 1237);
+        result = prime * result + (presettleQueueProducers ? 1231 : 1237);
+        result = prime * result + (presettleTopicConsumers ? 1231 : 1237);
+        result = prime * result + (presettleTopicProducers ? 1231 : 1237);
+        result = prime * result + (presettleTransactedProducers ? 1231 : 1237);
+        return result;
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+        if (this == obj) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        if (getClass() != obj.getClass()) {
+            return false;
+        }
+
+        JmsDefaultPresettlePolicy other = (JmsDefaultPresettlePolicy) obj;
+        if (presettleAll != other.presettleAll) {
+            return false;
+        }
+        if (presettleConsumers != other.presettleConsumers) {
+            return false;
+        }
+        if (presettleProducers != other.presettleProducers) {
+            return false;
+        }
+        if (presettleQueueConsumers != other.presettleQueueConsumers) {
+            return false;
+        }
+        if (presettleQueueProducers != other.presettleQueueProducers) {
+            return false;
+        }
+        if (presettleTopicConsumers != other.presettleTopicConsumers) {
+            return false;
+        }
+        if (presettleTopicProducers != other.presettleTopicProducers) {
+            return false;
+        }
+        if (presettleTransactedProducers != other.presettleTransactedProducers) {
+            return false;
+        }
+
+        return true;
+    }
 }

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsPrefetchPolicyTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsPrefetchPolicyTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsPrefetchPolicyTest.java
deleted file mode 100644
index 79c8c74..0000000
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsPrefetchPolicyTest.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.qpid.jms;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy;
-import org.apache.qpid.jms.policy.JmsPrefetchPolicy;
-import org.junit.Test;
-
-/**
- *
- */
-public class JmsPrefetchPolicyTest {
-
-    @Test
-    public void testHashCode() {
-        JmsPrefetchPolicy policy1 = new JmsDefaultPrefetchPolicy();
-        JmsPrefetchPolicy policy2 = new JmsDefaultPrefetchPolicy();
-
-        assertTrue(policy1.hashCode() != 0);
-        assertEquals(policy1.hashCode(), policy1.hashCode());
-        assertEquals(policy2.hashCode(), policy2.hashCode());
-    }
-
-    @Test
-    public void testJmsPrefetchPolicy() {
-        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
-
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_TOPIC_PREFETCH, policy.getTopicPrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_DURABLE_TOPIC_PREFETCH, policy.getDurableTopicPrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_PREFETCH, policy.getQueuePrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_BROWSER_PREFETCH, policy.getQueueBrowserPrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.MAX_PREFETCH_SIZE, policy.getMaxPrefetchSize());
-    }
-
-    @Test
-    public void testJmsPrefetchPolicyJmsPrefetchPolicy() {
-        JmsDefaultPrefetchPolicy policy1 = new JmsDefaultPrefetchPolicy();
-        policy1.setTopicPrefetch(10);
-        policy1.setDurableTopicPrefetch(20);
-        policy1.setQueueBrowserPrefetch(30);
-        policy1.setQueuePrefetch(40);
-        policy1.setMaxPrefetchSize(100);
-
-        JmsDefaultPrefetchPolicy policy2 = new JmsDefaultPrefetchPolicy(policy1);
-
-        assertEquals(policy1.getTopicPrefetch(), policy2.getTopicPrefetch());
-        assertEquals(policy1.getDurableTopicPrefetch(), policy2.getDurableTopicPrefetch());
-        assertEquals(policy1.getQueuePrefetch(), policy2.getQueuePrefetch());
-        assertEquals(policy1.getQueueBrowserPrefetch(), policy2.getQueueBrowserPrefetch());
-        assertEquals(policy1.getMaxPrefetchSize(), policy2.getMaxPrefetchSize());
-    }
-
-    @Test
-    public void testGetMaxPrefetchSize() {
-        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
-        assertEquals(JmsDefaultPrefetchPolicy.MAX_PREFETCH_SIZE, policy.getMaxPrefetchSize());
-        policy.setMaxPrefetchSize(10);
-        assertEquals(10, policy.getMaxPrefetchSize());
-    }
-
-    @Test
-    public void testMaxPrefetchSizeIsHonored() {
-        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
-        assertEquals(JmsDefaultPrefetchPolicy.MAX_PREFETCH_SIZE, policy.getMaxPrefetchSize());
-        policy.setMaxPrefetchSize(42);
-        assertEquals(42, policy.getMaxPrefetchSize());
-
-        policy.setTopicPrefetch(100);
-        policy.setDurableTopicPrefetch(100);
-        policy.setQueueBrowserPrefetch(100);
-        policy.setQueuePrefetch(100);
-
-        assertEquals(42, policy.getTopicPrefetch());
-        assertEquals(42, policy.getDurableTopicPrefetch());
-        assertEquals(42, policy.getQueuePrefetch());
-        assertEquals(42, policy.getQueueBrowserPrefetch());
-    }
-
-    @Test
-    public void testSetAll() {
-        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
-
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_TOPIC_PREFETCH, policy.getTopicPrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_DURABLE_TOPIC_PREFETCH, policy.getDurableTopicPrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_PREFETCH, policy.getQueuePrefetch());
-        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_BROWSER_PREFETCH, policy.getQueueBrowserPrefetch());
-
-        policy.setAll(42);
-
-        assertEquals(42, policy.getTopicPrefetch());
-        assertEquals(42, policy.getDurableTopicPrefetch());
-        assertEquals(42, policy.getQueuePrefetch());
-        assertEquals(42, policy.getQueueBrowserPrefetch());
-    }
-
-    @Test
-    public void testEqualsObject() {
-        JmsPrefetchPolicy policy1 = new JmsDefaultPrefetchPolicy();
-        JmsPrefetchPolicy policy2 = new JmsDefaultPrefetchPolicy();
-
-        assertEquals(policy1, policy1);
-        assertEquals(policy1, policy2);
-
-        JmsDefaultPrefetchPolicy policy3 = new JmsDefaultPrefetchPolicy();
-        policy3.setTopicPrefetch(10);
-        JmsDefaultPrefetchPolicy policy4 = new JmsDefaultPrefetchPolicy();
-        policy4.setQueuePrefetch(10);
-        JmsDefaultPrefetchPolicy policy5 = new JmsDefaultPrefetchPolicy();
-        policy5.setDurableTopicPrefetch(10);
-        JmsDefaultPrefetchPolicy policy6 = new JmsDefaultPrefetchPolicy();
-        policy6.setQueueBrowserPrefetch(10);
-
-        assertFalse(policy1.equals(policy3));
-        assertFalse(policy1.equals(policy4));
-        assertFalse(policy1.equals(policy5));
-        assertFalse(policy1.equals(policy6));
-
-        assertFalse(policy1.equals(null));
-        assertFalse(policy1.equals(""));
-    }
-}

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryQueueTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryQueueTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryQueueTest.java
index 93ae0ea..6d86c23 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryQueueTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryQueueTest.java
@@ -145,7 +145,6 @@ public class JmsTemporaryQueueTest extends QpidJmsTestCase {
         String unusedValue = "unusedValue";
         JmsQueue queue = new JmsQueue();
 
-
         Map<String, String> props = new HashMap<String, String>();
         props.put(NAME_PROP, name);
         props.put(unusedKey, unusedValue);

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryTopicTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryTopicTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryTopicTest.java
index 5cd0be1..01138dd 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryTopicTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsTemporaryTopicTest.java
@@ -145,7 +145,6 @@ public class JmsTemporaryTopicTest extends QpidJmsTestCase {
         String unusedValue = "unusedValue";
         JmsTopic topic = new JmsTopic();
 
-
         Map<String, String> props = new HashMap<String, String>();
         props.put(NAME_PROP, name);
         props.put(unusedKey, unusedValue);

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPrefetchPolicyTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPrefetchPolicyTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPrefetchPolicyTest.java
new file mode 100644
index 0000000..ed2620b
--- /dev/null
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPrefetchPolicyTest.java
@@ -0,0 +1,139 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.qpid.jms.policy;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy;
+import org.apache.qpid.jms.policy.JmsPrefetchPolicy;
+import org.junit.Test;
+
+/**
+ *
+ */
+public class JmsDefaultPrefetchPolicyTest {
+
+    @Test
+    public void testHashCode() {
+        JmsPrefetchPolicy policy1 = new JmsDefaultPrefetchPolicy();
+        JmsPrefetchPolicy policy2 = new JmsDefaultPrefetchPolicy();
+
+        assertTrue(policy1.hashCode() != 0);
+        assertEquals(policy1.hashCode(), policy1.hashCode());
+        assertEquals(policy2.hashCode(), policy2.hashCode());
+    }
+
+    @Test
+    public void testJmsPrefetchPolicy() {
+        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
+
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_TOPIC_PREFETCH, policy.getTopicPrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_DURABLE_TOPIC_PREFETCH, policy.getDurableTopicPrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_PREFETCH, policy.getQueuePrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_BROWSER_PREFETCH, policy.getQueueBrowserPrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.MAX_PREFETCH_SIZE, policy.getMaxPrefetchSize());
+    }
+
+    @Test
+    public void testJmsPrefetchPolicyJmsPrefetchPolicy() {
+        JmsDefaultPrefetchPolicy policy1 = new JmsDefaultPrefetchPolicy();
+        policy1.setTopicPrefetch(10);
+        policy1.setDurableTopicPrefetch(20);
+        policy1.setQueueBrowserPrefetch(30);
+        policy1.setQueuePrefetch(40);
+        policy1.setMaxPrefetchSize(100);
+
+        JmsDefaultPrefetchPolicy policy2 = new JmsDefaultPrefetchPolicy(policy1);
+
+        assertEquals(policy1.getTopicPrefetch(), policy2.getTopicPrefetch());
+        assertEquals(policy1.getDurableTopicPrefetch(), policy2.getDurableTopicPrefetch());
+        assertEquals(policy1.getQueuePrefetch(), policy2.getQueuePrefetch());
+        assertEquals(policy1.getQueueBrowserPrefetch(), policy2.getQueueBrowserPrefetch());
+        assertEquals(policy1.getMaxPrefetchSize(), policy2.getMaxPrefetchSize());
+    }
+
+    @Test
+    public void testGetMaxPrefetchSize() {
+        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
+        assertEquals(JmsDefaultPrefetchPolicy.MAX_PREFETCH_SIZE, policy.getMaxPrefetchSize());
+        policy.setMaxPrefetchSize(10);
+        assertEquals(10, policy.getMaxPrefetchSize());
+    }
+
+    @Test
+    public void testMaxPrefetchSizeIsHonored() {
+        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
+        assertEquals(JmsDefaultPrefetchPolicy.MAX_PREFETCH_SIZE, policy.getMaxPrefetchSize());
+        policy.setMaxPrefetchSize(42);
+        assertEquals(42, policy.getMaxPrefetchSize());
+
+        policy.setTopicPrefetch(100);
+        policy.setDurableTopicPrefetch(100);
+        policy.setQueueBrowserPrefetch(100);
+        policy.setQueuePrefetch(100);
+
+        assertEquals(42, policy.getTopicPrefetch());
+        assertEquals(42, policy.getDurableTopicPrefetch());
+        assertEquals(42, policy.getQueuePrefetch());
+        assertEquals(42, policy.getQueueBrowserPrefetch());
+    }
+
+    @Test
+    public void testSetAll() {
+        JmsDefaultPrefetchPolicy policy = new JmsDefaultPrefetchPolicy();
+
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_TOPIC_PREFETCH, policy.getTopicPrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_DURABLE_TOPIC_PREFETCH, policy.getDurableTopicPrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_PREFETCH, policy.getQueuePrefetch());
+        assertEquals(JmsDefaultPrefetchPolicy.DEFAULT_QUEUE_BROWSER_PREFETCH, policy.getQueueBrowserPrefetch());
+
+        policy.setAll(42);
+
+        assertEquals(42, policy.getTopicPrefetch());
+        assertEquals(42, policy.getDurableTopicPrefetch());
+        assertEquals(42, policy.getQueuePrefetch());
+        assertEquals(42, policy.getQueueBrowserPrefetch());
+    }
+
+    @Test
+    public void testEqualsObject() {
+        JmsPrefetchPolicy policy1 = new JmsDefaultPrefetchPolicy();
+        JmsPrefetchPolicy policy2 = new JmsDefaultPrefetchPolicy();
+
+        assertEquals(policy1, policy1);
+        assertEquals(policy1, policy2);
+
+        JmsDefaultPrefetchPolicy policy3 = new JmsDefaultPrefetchPolicy();
+        policy3.setTopicPrefetch(10);
+        JmsDefaultPrefetchPolicy policy4 = new JmsDefaultPrefetchPolicy();
+        policy4.setQueuePrefetch(10);
+        JmsDefaultPrefetchPolicy policy5 = new JmsDefaultPrefetchPolicy();
+        policy5.setDurableTopicPrefetch(10);
+        JmsDefaultPrefetchPolicy policy6 = new JmsDefaultPrefetchPolicy();
+        policy6.setQueueBrowserPrefetch(10);
+
+        assertFalse(policy1.equals(policy3));
+        assertFalse(policy1.equals(policy4));
+        assertFalse(policy1.equals(policy5));
+        assertFalse(policy1.equals(policy6));
+
+        assertFalse(policy1.equals(null));
+        assertFalse(policy1.equals(""));
+    }
+}

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicyTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicyTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicyTest.java
new file mode 100644
index 0000000..8d8cb27
--- /dev/null
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultPresettlePolicyTest.java
@@ -0,0 +1,459 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.qpid.jms.policy;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import org.apache.qpid.jms.JmsDestination;
+import org.apache.qpid.jms.JmsQueue;
+import org.apache.qpid.jms.JmsSession;
+import org.apache.qpid.jms.JmsTopic;
+import org.junit.Test;
+import org.mockito.Mockito;
+
+/**
+ * Test basic behavior of the JmsDefaultPresettlePolicy
+ */
+public class JmsDefaultPresettlePolicyTest {
+
+    @Test
+    public void testIsConsumerPresettledPresettleAll() {
+        JmsDestination destination = new JmsQueue("test");
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isConsumerPresttled(session, destination));
+        assertFalse(policy.isProducerPresttled(session, null));
+
+        policy.setPresettleAll(true);
+        assertTrue(policy.isConsumerPresttled(session, destination));
+        assertFalse(policy.isConsumerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsProducerPresettledPresettleAll() {
+        JmsDestination destination = new JmsQueue("test");
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isProducerPresttled(session, destination));
+        assertFalse(policy.isProducerPresttled(session, null));
+
+        policy.setPresettleAll(true);
+        assertTrue(policy.isProducerPresttled(session, destination));
+        assertTrue(policy.isProducerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsConsumerPresettledPresettleConsumer() {
+        JmsDestination destination = new JmsQueue("test");
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isConsumerPresttled(session, destination));
+        assertFalse(policy.isConsumerPresttled(session, null));
+
+        policy.setPresettleConsumers(true);
+        assertTrue(policy.isConsumerPresttled(session, destination));
+        assertFalse(policy.isConsumerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsProducerPresettledPresettleProducers() {
+        JmsDestination destination = new JmsQueue("test");
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isProducerPresttled(session, destination));
+        assertFalse(policy.isProducerPresttled(session, null));
+
+        policy.setPresettleProducers(true);
+        assertTrue(policy.isProducerPresttled(session, destination));
+        assertTrue(policy.isProducerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsConsumerPresettledPresettleTopicConsumer() {
+        JmsDestination queue = new JmsQueue("test");
+        JmsDestination topic = new JmsTopic("test");
+
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isConsumerPresttled(session, queue));
+        assertFalse(policy.isConsumerPresttled(session, topic));
+        assertFalse(policy.isConsumerPresttled(session, null));
+
+        policy.setPresettleTopicConsumers(true);
+        assertFalse(policy.isConsumerPresttled(session, queue));
+        assertTrue(policy.isConsumerPresttled(session, topic));
+        assertFalse(policy.isConsumerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsConsumerPresettledPresettleQueueConsumer() {
+        JmsDestination queue = new JmsQueue("test");
+        JmsDestination topic = new JmsTopic("test");
+
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isConsumerPresttled(session, queue));
+        assertFalse(policy.isConsumerPresttled(session, topic));
+        assertFalse(policy.isConsumerPresttled(session, null));
+
+        policy.setPresettleQueueConsumers(true);
+        assertTrue(policy.isConsumerPresttled(session, queue));
+        assertFalse(policy.isConsumerPresttled(session, topic));
+        assertFalse(policy.isConsumerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsProducerPresettledPresettleTopicProducers() {
+        JmsDestination queue = new JmsQueue("test");
+        JmsDestination topic = new JmsTopic("test");
+
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isProducerPresttled(session, queue));
+        assertFalse(policy.isProducerPresttled(session, topic));
+        assertFalse(policy.isProducerPresttled(session, null));
+
+        policy.setPresettleTopicProducers(true);
+        assertFalse(policy.isProducerPresttled(session, queue));
+        assertTrue(policy.isProducerPresttled(session, topic));
+        assertFalse(policy.isProducerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsProducerPresettledPresettleQueueProducers() {
+        JmsDestination queue = new JmsQueue("test");
+        JmsDestination topic = new JmsTopic("test");
+
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isProducerPresttled(session, queue));
+        assertFalse(policy.isProducerPresttled(session, topic));
+        assertFalse(policy.isProducerPresttled(session, null));
+
+        policy.setPresettleQueueProducers(true);
+        assertTrue(policy.isProducerPresttled(session, queue));
+        assertFalse(policy.isProducerPresttled(session, topic));
+        assertFalse(policy.isProducerPresttled(session, null));
+    }
+
+    @Test
+    public void testIsProducerPresettledPresettleTransactedProducers() {
+        JmsDestination queue = new JmsQueue("test");
+        JmsDestination topic = new JmsTopic("test");
+
+        JmsSession session = Mockito.mock(JmsSession.class);
+        Mockito.when(session.isTransacted()).thenReturn(false);
+
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isProducerPresttled(session, queue));
+        assertFalse(policy.isProducerPresttled(session, topic));
+        assertFalse(policy.isProducerPresttled(session, null));
+
+        Mockito.when(session.isTransacted()).thenReturn(true);
+
+        policy.setPresettleTransactedProducers(true);
+        assertTrue(policy.isProducerPresttled(session, queue));
+        assertTrue(policy.isProducerPresttled(session, topic));
+        assertFalse(policy.isProducerPresttled(session, null));
+    }
+
+    @Test
+    public void testPresettleAll() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+
+        assertFalse(policy.isPresettleAll());
+        policy.setPresettleAll(true);
+        assertTrue(policy.isPresettleAll());
+
+        assertTrue(policy.isPresettleConsumers());
+        assertTrue(policy.isPresettleQueueConsumers());
+        assertTrue(policy.isPresettleTopicConsumers());
+        assertTrue(policy.isPresettleProducers());
+        assertTrue(policy.isPresettleQueueProducers());
+        assertTrue(policy.isPresettleTopicProducers());
+        assertTrue(policy.isPresettleTransactedProducers());
+
+        policy.setPresettleAll(false);
+
+        assertFalse(policy.isPresettleConsumers());
+        assertFalse(policy.isPresettleProducers());
+        assertFalse(policy.isPresettleQueueConsumers());
+        assertFalse(policy.isPresettleQueueProducers());
+        assertFalse(policy.isPresettleTopicConsumers());
+        assertFalse(policy.isPresettleTopicProducers());
+        assertFalse(policy.isPresettleTransactedProducers());
+    }
+
+    @Test
+    public void testPresettleConsumers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+
+        assertFalse(policy.isPresettleConsumers());
+
+        policy.setPresettleConsumers(true);
+
+        assertTrue(policy.isPresettleConsumers());
+        assertTrue(policy.isPresettleQueueConsumers());
+        assertTrue(policy.isPresettleTopicConsumers());
+
+        policy.setPresettleConsumers(false);
+
+        assertFalse(policy.isPresettleConsumers());
+        assertFalse(policy.isPresettleQueueConsumers());
+        assertFalse(policy.isPresettleTopicConsumers());
+    }
+
+    @Test
+    public void testPresettleProducers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+
+        assertFalse(policy.isPresettleProducers());
+
+        policy.setPresettleProducers(true);
+
+        assertTrue(policy.isPresettleProducers());
+        assertTrue(policy.isPresettleQueueProducers());
+        assertTrue(policy.isPresettleTopicProducers());
+
+        policy.setPresettleProducers(false);
+
+        assertFalse(policy.isPresettleProducers());
+        assertFalse(policy.isPresettleQueueProducers());
+        assertFalse(policy.isPresettleTopicProducers());
+    }
+
+    @Test
+    public void testPresettleQueueProducers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isPresettleQueueProducers());
+
+        policy.setPresettleQueueProducers(true);
+        assertTrue(policy.isPresettleQueueProducers());
+
+        policy.setPresettleQueueProducers(false);
+        assertFalse(policy.isPresettleQueueProducers());
+    }
+
+    @Test
+    public void testPresettleTopicProducers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isPresettleTopicProducers());
+
+        policy.setPresettleTopicProducers(true);
+        assertTrue(policy.isPresettleTopicProducers());
+
+        policy.setPresettleTopicProducers(false);
+        assertFalse(policy.isPresettleTopicProducers());
+    }
+
+    @Test
+    public void testPresettleTransactedProducers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isPresettleTransactedProducers());
+
+        policy.setPresettleTransactedProducers(true);
+        assertTrue(policy.isPresettleTransactedProducers());
+
+        policy.setPresettleTransactedProducers(false);
+        assertFalse(policy.isPresettleTransactedProducers());
+    }
+
+    @Test
+    public void testPresettleTopicConsumers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isPresettleTopicConsumers());
+
+        policy.setPresettleTopicConsumers(true);
+        assertTrue(policy.isPresettleTopicConsumers());
+
+        policy.setPresettleTopicConsumers(false);
+        assertFalse(policy.isPresettleTopicConsumers());
+    }
+
+    @Test
+    public void testPresettleQueueConsumers() {
+        JmsDefaultPresettlePolicy policy = new JmsDefaultPresettlePolicy();
+        assertFalse(policy.isPresettleQueueConsumers());
+
+        policy.setPresettleQueueConsumers(true);
+        assertTrue(policy.isPresettleQueueConsumers());
+
+        policy.setPresettleQueueConsumers(false);
+        assertFalse(policy.isPresettleQueueConsumers());
+    }
+
+    @Test
+    public void testEquals() {
+        JmsDefaultPresettlePolicy policy1 = new JmsDefaultPresettlePolicy();
+        JmsDefaultPresettlePolicy policy2 = new JmsDefaultPresettlePolicy();
+
+        assertTrue(policy1.equals(policy1));
+        assertTrue(policy1.equals(policy2));
+        assertTrue(policy2.equals(policy1));
+        assertFalse(policy1.equals(null));
+        assertFalse(policy1.equals("test"));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleAll(true);
+
+        assertFalse(policy1.equals(policy2));
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(true);
+
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(true);
+
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(true);
+
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(true);
+
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(false);
+        policy1.setPresettleTopicProducers(true);
+
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(false);
+        policy1.setPresettleTopicProducers(false);
+        policy1.setPresettleQueueProducers(true);
+
+        assertFalse(policy2.equals(policy1));
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(false);
+        policy1.setPresettleTopicProducers(false);
+        policy1.setPresettleQueueProducers(false);
+        policy1.setPresettleTransactedProducers(true);
+
+        assertFalse(policy2.equals(policy1));
+    }
+
+    @Test
+    public void testHashCode() {
+        JmsDefaultPresettlePolicy policy1 = new JmsDefaultPresettlePolicy();
+        JmsDefaultPresettlePolicy policy2 = new JmsDefaultPresettlePolicy();
+
+        assertEquals(policy1.hashCode(), policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy2.setPresettleAll(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(false);
+        policy1.setPresettleTopicProducers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(false);
+        policy1.setPresettleTopicProducers(false);
+        policy1.setPresettleQueueProducers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+
+        policy1.setPresettleAll(false);
+        policy1.setPresettleProducers(false);
+        policy2.setPresettleConsumers(false);
+        policy2.setPresettleTopicConsumers(false);
+        policy2.setPresettleQueueConsumers(false);
+        policy1.setPresettleTopicProducers(false);
+        policy1.setPresettleQueueProducers(false);
+        policy1.setPresettleTransactedProducers(true);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+    }
+}

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/0251ae8c/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultRedeliveryPolicyTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultRedeliveryPolicyTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultRedeliveryPolicyTest.java
new file mode 100644
index 0000000..d80a18e
--- /dev/null
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/policy/JmsDefaultRedeliveryPolicyTest.java
@@ -0,0 +1,83 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.qpid.jms.policy;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import org.apache.qpid.jms.JmsDestination;
+import org.apache.qpid.jms.JmsQueue;
+import org.junit.Test;
+
+/**
+ * Test for the Default Redelivery Policy object.
+ */
+public class JmsDefaultRedeliveryPolicyTest {
+
+    @Test
+    public void testDefaults() {
+        JmsDestination destination = new JmsQueue("test");
+        JmsDefaultRedeliveryPolicy policy = new JmsDefaultRedeliveryPolicy();
+
+        assertEquals(JmsDefaultRedeliveryPolicy.DEFAULT_MAX_REDELIVERIES, policy.getMaxRedeliveries(destination));
+    }
+
+    @Test
+    public void testSetMaxRedeliveries() {
+        JmsDestination destination = new JmsQueue("test");
+        JmsDefaultRedeliveryPolicy policy = new JmsDefaultRedeliveryPolicy();
+
+        policy.setMaxRedeliveries(JmsDefaultRedeliveryPolicy.DEFAULT_MAX_REDELIVERIES + 1);
+
+        assertFalse(JmsDefaultRedeliveryPolicy.DEFAULT_MAX_REDELIVERIES == policy.getMaxRedeliveries(destination));
+
+        assertEquals(JmsDefaultRedeliveryPolicy.DEFAULT_MAX_REDELIVERIES + 1, policy.getMaxRedeliveries());
+        assertEquals(JmsDefaultRedeliveryPolicy.DEFAULT_MAX_REDELIVERIES + 1, policy.getMaxRedeliveries(destination));
+    }
+
+    @Test
+    public void testEquals() {
+        JmsDefaultRedeliveryPolicy policy1 = new JmsDefaultRedeliveryPolicy();
+        JmsDefaultRedeliveryPolicy policy2 = new JmsDefaultRedeliveryPolicy();
+
+        assertTrue(policy1.equals(policy1));
+        assertTrue(policy1.equals(policy2));
+        assertTrue(policy2.equals(policy1));
+        assertFalse(policy1.equals(null));
+        assertFalse(policy1.equals("test"));
+
+        policy1.setMaxRedeliveries(5);
+        policy2.setMaxRedeliveries(6);
+
+        assertFalse(policy1.equals(policy2));
+        assertFalse(policy2.equals(policy1));
+    }
+
+    @Test
+    public void testHashCode() {
+        JmsDefaultRedeliveryPolicy policy1 = new JmsDefaultRedeliveryPolicy();
+        JmsDefaultRedeliveryPolicy policy2 = new JmsDefaultRedeliveryPolicy();
+
+        assertEquals(policy1.hashCode(), policy2.hashCode());
+
+        policy1.setMaxRedeliveries(5);
+        policy2.setMaxRedeliveries(6);
+
+        assertFalse(policy1.hashCode() == policy2.hashCode());
+    }
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org