diff options
author | Alan Conway <aconway@apache.org> | 2008-01-28 17:42:22 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2008-01-28 17:42:22 +0000 |
commit | 71953a76caba28be5083ed2ec1bf01dfe4b3a97b (patch) | |
tree | e0b974c00aead5f6c678a326c7f70147603dcbbe /qpid/cpp/src/tests/ClientSessionTest.cpp | |
parent | bdbf9ebf5b41d070eb200644d5c2f39f0175ecef (diff) | |
download | qpid-python-71953a76caba28be5083ed2ec1bf01dfe4b3a97b.tar.gz |
Added disabled test and FIXME note to fix client-side race.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@615968 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/tests/ClientSessionTest.cpp')
-rw-r--r-- | qpid/cpp/src/tests/ClientSessionTest.cpp | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/qpid/cpp/src/tests/ClientSessionTest.cpp b/qpid/cpp/src/tests/ClientSessionTest.cpp index 320d3afd27..f9de3b7619 100644 --- a/qpid/cpp/src/tests/ClientSessionTest.cpp +++ b/qpid/cpp/src/tests/ClientSessionTest.cpp @@ -106,26 +106,34 @@ BOOST_FIXTURE_TEST_CASE(testDispatcher, ClientSessionFixture) { session =connection.newSession(); declareSubscribe(); - - TransferContent msg1("One"); - msg1.getDeliveryProperties().setRoutingKey("my-queue"); - session.messageTransfer(content=msg1); - - TransferContent msg2("Two"); - msg2.getDeliveryProperties().setRoutingKey("my-queue"); - session.messageTransfer(content=msg2); - - TransferContent msg3("Three"); - msg3.getDeliveryProperties().setRoutingKey("my-queue"); - session.messageTransfer(content=msg3); - - DummyListener listener(session, "my-dest", 3); + size_t count = 100; + for (size_t i = 0; i < count; ++i) + session.messageTransfer(content=TransferContent(lexical_cast<string>(i), "my-queue")); + DummyListener listener(session, "my-dest", count); listener.run(); - BOOST_CHECK_EQUAL((size_t) 3, listener.messages.size()); - BOOST_CHECK_EQUAL(std::string("One"), listener.messages[0].getData()); - BOOST_CHECK_EQUAL(std::string("Two"), listener.messages[1].getData()); - BOOST_CHECK_EQUAL(std::string("Three"), listener.messages[2].getData()); + BOOST_REQUIRE_EQUAL(count, listener.messages.size()); + for (size_t i = 0; i < count; ++i) + BOOST_CHECK_EQUAL(lexical_cast<string>(i), listener.messages[i].getData()); +} + +/* FIXME aconway 2008-01-28: hangs +BOOST_FIXTURE_TEST_CASE(testDispatcherThread, ClientSessionFixture) +{ + session =connection.newSession(); + declareSubscribe(); + size_t count = 10000; + DummyListener listener(session, "my-dest", count); + sys::Thread t(listener); + for (size_t i = 0; i < count; ++i) { + session.messageTransfer(content=TransferContent(lexical_cast<string>(i), "my-queue")); + if (i%100 == 0) cout << "T" << i << std::flush; + } + t.join(); + BOOST_REQUIRE_EQUAL(count, listener.messages.size()); + for (size_t i = 0; i < count; ++i) + BOOST_CHECK_EQUAL(lexical_cast<string>(i), listener.messages[i].getData()); } +*/ BOOST_FIXTURE_TEST_CASE(_FIXTURE, ClientSessionFixture) { |