summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/tests/cluster_client.cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2007-07-24 19:39:27 +0000
committerAlan Conway <aconway@apache.org>2007-07-24 19:39:27 +0000
commitc2efe8deabde635f07e78d438fc529ca67d34133 (patch)
tree5a72156552781e1044dbecfb7ae41b71be51a6c7 /qpid/cpp/src/tests/cluster_client.cpp
parentf6ce4582d32b38dee7139dd286a7abcc4f8695cc (diff)
downloadqpid-python-c2efe8deabde635f07e78d438fc529ca67d34133.tar.gz
* Summary:
- Wiring (declare/delete/bind) is replicated via AIS. - TestOptions includes all logging options. - Logger automatically parses env vars so logging can be enabled for any program linked with libqpidcommon e.g. by setting QPID_TRACE=1. * src/qpid/cluster/SessionManager.cpp: Handle frames from cluster - Forward to BrokerAdapter for execution. - Suppress responses in proxy. * src/tests/TestOptions.h (Options): Logging options, --help option. * src/qpid/client/ClientConnection.cpp: Removed log initialization. Logs are initialized either in TestOptions or automatically from env vars, e.g. QPID_TRACE, * src/qpid/QpidError.h (class QpidError): Initialize Exception in constructor so messages can be logged. * src/qpid/framing/ChannelAdapter.h: Made send() virtual. * src/tests/Cluster_child.cpp: UUID corrected. * src/qpid/broker/Broker.cpp: Pass chains to updater by ref. * src/qpid/Options.cpp (parse): Fix log settings from environment. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@559171 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/tests/cluster_client.cpp')
-rw-r--r--qpid/cpp/src/tests/cluster_client.cpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/qpid/cpp/src/tests/cluster_client.cpp b/qpid/cpp/src/tests/cluster_client.cpp
index 421a33a40a..7620faa9fa 100644
--- a/qpid/cpp/src/tests/cluster_client.cpp
+++ b/qpid/cpp/src/tests/cluster_client.cpp
@@ -52,6 +52,7 @@ struct ClusterConnections : public vector<shared_ptr<Connection> > {
};
BOOST_AUTO_TEST_CASE(testWiringReplication) {
+ // Declare on one broker, use on others.
ClusterConnections cluster;
BOOST_REQUIRE(cluster.size() > 1);
@@ -63,13 +64,17 @@ BOOST_AUTO_TEST_CASE(testWiringReplication) {
broker0.declareExchange(fooEx);
broker0.declareQueue(fooQ);
broker0.bind(fooEx, fooQ, "FooKey");
-
- Channel broker1;
- cluster[1]->openChannel(broker1);
- broker1.publish(Message("hello"), fooEx, "FooKey");
- Message m;
- BOOST_REQUIRE(broker1.get(m, fooQ));
- BOOST_REQUIRE_EQUAL(m.getData(), "hello");
+ broker0.close();
+
+ for (size_t i = 1; i < cluster.size(); ++i) {
+ Channel ch;
+ cluster[i]->openChannel(ch);
+ ch.publish(Message("hello"), fooEx, "FooKey");
+ Message m;
+ BOOST_REQUIRE(ch.get(m, fooQ));
+ BOOST_REQUIRE_EQUAL(m.getData(), "hello");
+ ch.close();
+ }
}