summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2013-11-18 16:18:36 +0000
committerGordon Sim <gsim@apache.org>2013-11-18 16:18:36 +0000
commitbb26f591df0cb17a0f7238c76f7e39b504e080bd (patch)
treed8a025c003e39838012bde9ce9238c83528611b0
parent32530314b94ea8128fb8d342c8fb49b1fecc77d4 (diff)
downloadqpid-python-bb26f591df0cb17a0f7238c76f7e39b504e080bd.tar.gz
QPID-5354: ensure durability gets requested in node-properties (backported r1543018 and r1543019 for 0.26)
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.26@1543066 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp2
-rw-r--r--qpid/cpp/src/tests/assertions.py7
2 files changed, 7 insertions, 2 deletions
diff --git a/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp b/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
index 9d0f60a8b7..5595d527f6 100644
--- a/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
+++ b/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
@@ -873,7 +873,7 @@ void putLifetimePolicy(pn_data_t* data, const std::string& value)
}
void AddressHelper::setNodeProperties(pn_terminus_t* terminus)
{
- if (properties.size() || type.size()) {
+ if (properties.size() || type.size() || durableNode) {
pn_data_t* data = pn_terminus_properties(terminus);
pn_data_put_map(data);
pn_data_enter(data);
diff --git a/qpid/cpp/src/tests/assertions.py b/qpid/cpp/src/tests/assertions.py
index b1a06aea83..359cd7aacd 100644
--- a/qpid/cpp/src/tests/assertions.py
+++ b/qpid/cpp/src/tests/assertions.py
@@ -54,7 +54,7 @@ class AssertionTests (VersionTest):
except AssertionFailed: None
except MessagingError: None
- def test_queue_durability(self):
+ def test_queue_not_durable(self):
name = str(uuid4())
self.ssn.sender("%s; {create:always}" % name)
self.ssn.sender("%s; {assert:always, node:{durable:False}}" % name)
@@ -64,6 +64,11 @@ class AssertionTests (VersionTest):
except AssertionFailed: None
except MessagingError: None
+ def test_queue_is_durable(self):
+ name = str(uuid4())
+ self.ssn.sender("%s; {create:always, node:{durable:True}}" % name)
+ self.ssn.sender("%s; {assert:always, node:{durable:True}}" % name)
+
def test_queue_options(self):
name = str(uuid4())
self.ssn.sender("%s; {create:always, node:{x-declare:{arguments:{foo:bar,'qpid.last_value_queue_key':abc}}}}" % name)