diff options
author | Alan Conway <aconway@apache.org> | 2008-01-24 22:26:12 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2008-01-24 22:26:12 +0000 |
commit | f0a31beb7a609591e7b34e60ddfd85e9e183fbc0 (patch) | |
tree | 5582c3f04ee1b417d11050b0c994da657db09b39 /cpp/src/tests/ClientSessionTest.cpp | |
parent | f2ab2fa9fcb713eedf21e98a2a3f9fab8e76dead (diff) | |
download | qpid-python-f0a31beb7a609591e7b34e60ddfd85e9e183fbc0.tar.gz |
Improved/additional client API tests.
- Replaced InProcessBroker with a more accurate loopback BrokerFixture.
- Added asserts for mutex/condition/thread errors in debug build.
- Added client tests for several exception conditions.
- Added peer address to log ouput, client/server distinguished by (addr) or [addr]
- Fixed various deadlocks & races exposed by the new asserts & tests.
File-by-file:
New BrokerFixture replaces InProcessBroker
D src/tests/InProcessBroker.h
M src/tests/BrokerFixture.h
M src/tests/SocketProxy.h
M src/tests/Makefile.am
Made it run a bit faster.
M src/tests/quick_perftest
Redundant
D src/tests/APRBaseTest.cpp
Updated tests to use BrokerFixture
M src/tests/ClientChannelTest.cpp
M src/tests/exception_test.cpp
M src/tests/ClientSessionTest.cpp
Print thread IDs in decimal, same as GDB.
M src/qpid/log/Logger.cpp
Assert mutex/condition ops in debug build.
M src/qpid/sys/posix/check.h
M src/qpid/sys/posix/Mutex.h
M src/qpid/sys/posix/Condition.h
M src/qpid/sys/posix/Thread.h
Added toFd() so SocketProxy can use ::select()
M src/qpid/sys/Socket.h
M src/qpid/sys/posix/Socket.cpp
Fixes for races & deadlocks shown up by new tests & asserts.
Mostly shutdown/close issues.
M src/qpid/client/ConnectionHandler.h
M src/qpid/client/ConnectionImpl.cpp
M src/qpid/client/Demux.h
M src/qpid/client/SessionCore.cpp
M src/qpid/client/ConnectionHandler.cpp
M src/qpid/client/Connector.h
M src/qpid/client/Demux.cpp
M src/qpid/client/Dispatcher.cpp
M src/qpid/client/ConnectionImpl.h
Logging peer address.
M src/qpid/sys/AsynchIOAcceptor.cpp
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@615063 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/tests/ClientSessionTest.cpp')
-rw-r--r-- | cpp/src/tests/ClientSessionTest.cpp | 26 |
1 files changed, 2 insertions, 24 deletions
diff --git a/cpp/src/tests/ClientSessionTest.cpp b/cpp/src/tests/ClientSessionTest.cpp index 5f45e1f938..82db7b9545 100644 --- a/cpp/src/tests/ClientSessionTest.cpp +++ b/cpp/src/tests/ClientSessionTest.cpp @@ -20,7 +20,6 @@ */ #include "qpid_test_plugin.h" #include "BrokerFixture.h" -#include "SocketProxy.h" #include "qpid/client/Dispatcher.h" #include "qpid/client/Session_0_10.h" #include "qpid/framing/TransferContent.h" @@ -62,7 +61,7 @@ struct DummyListener : public MessageListener } }; -class ClientSessionTest : public CppUnit::TestCase, public BrokerFixture +class ClientSessionTest : public CppUnit::TestCase, public ProxySessionFixture { CPPUNIT_TEST_SUITE(ClientSessionTest); CPPUNIT_TEST(testQueueQuery); @@ -71,7 +70,6 @@ class ClientSessionTest : public CppUnit::TestCase, public BrokerFixture CPPUNIT_TEST(testResumeExpiredError); CPPUNIT_TEST(testUseSuspendedError); CPPUNIT_TEST(testSuspendResume); - CPPUNIT_TEST(testDisconnectResume); CPPUNIT_TEST_SUITE_END(); public: @@ -85,11 +83,6 @@ class ClientSessionTest : public CppUnit::TestCase, public BrokerFixture session.messageFlow(destination=dest, unit=1, value=0xFFFFFFFF);//bytes } - bool queueExists(const std::string& q) { - TypedResult<QueueQueryResult> result = session.queueQuery(q); - return result.get().getQueue() == q; - } - void testQueueQuery() { session =connection.newSession(); @@ -166,26 +159,11 @@ class ClientSessionTest : public CppUnit::TestCase, public BrokerFixture declareSubscribe(); session.suspend(); // Make sure we are still subscribed after resume. - connection.resume(session); + connection.resume(session); session.messageTransfer(content=TransferContent("my-message", "my-queue")); FrameSet::shared_ptr msg = session.get(); CPPUNIT_ASSERT_EQUAL(string("my-message"), msg->getContent()); } - - void testDisconnectResume() { - // FIXME aconway 2007-12-11: Test hanging. -// ProxyConnection c(broker->getPort()); -// Session_0_10 s = c.session; -// s.queueDeclare(queue="before"); -// CPPUNIT_ASSERT(queueExists("before")); -// s.queueDeclare(queue=string("after")); -// c.proxy.client.close(); // Disconnect the client. -// Connection c2; -// open(c2); -// c2.resume(s); -// CPPUNIT_ASSERT(queueExists("after")); -// c2.close(); - } }; // Make this test suite a plugin. |