summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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)