Modified: incubator/qpid/trunk/qpid/cpp/src/tests/HeadersExchangeTest.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/HeadersExchangeTest.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/HeadersExchangeTest.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/HeadersExchangeTest.cpp Fri Oct 26 12:48:31 2007 @@ -19,7 +19,7 @@ * */ -#include "qpid/QpidError.h" +#include "qpid/Exception.h" #include "qpid/broker/HeadersExchange.h" #include "qpid/framing/FieldTable.h" #include "qpid/framing/FieldValue.h" @@ -118,7 +118,7 @@ try { //just checking this doesn't cause assertion etc exchange.bind(queue, key, &args); - } catch(qpid::QpidError&) { + } catch(qpid::Exception&) { //expected } }
Modified: incubator/qpid/trunk/qpid/cpp/src/tests/InProcessBroker.h URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/InProcessBroker.h?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/InProcessBroker.h (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/InProcessBroker.h Fri Oct 26 12:48:31 2007 @@ -25,6 +25,9 @@ #include "qpid/client/Connector.h" #include "qpid/client/Connection.h" #include "qpid/log/Statement.h" +#include "qpid/sys/Thread.h" +#include "qpid/sys/ConcurrentQueue.h" +#include "qpid/shared_ptr.h" #include <vector> #include <iostream> @@ -32,112 +35,176 @@ namespace qpid { -namespace broker { + /** - * A broker that implements client::Connector allowing direct - * in-process connection of client to broker. Used to write round-trip - * tests without requiring an external broker process. - * + * A client::Connector that connects directly to an in-process broker. * Also allows you to "snoop" on frames exchanged between client & broker. * * see FramingTest::testRequestResponseRoundtrip() for example of use. */ -class InProcessBroker : public client::Connector { +class InProcessConnector : + public client::Connector +{ public: + typedef sys::Mutex Mutex; + typedef Mutex::ScopedLock Lock; + typedef framing::FrameHandler FrameHandler; + typedef framing::AMQFrame AMQFrame; + enum Sender {CLIENT,BROKER}; - /** A frame tagged with the sender */ - struct TaggedFrame { - TaggedFrame(Sender e, framing::AMQFrame& f) : frame(f), sender(e) {} - bool fromBroker() const { return sender == BROKER; } - bool fromClient() const { return sender == CLIENT; } - - template <class MethodType> - MethodType* asMethod() { - return dynamic_cast<MethodType*>(frame.getBody()); + /** Simulate the network thread of a peer with a queue and a thread. + * With setInputHandler(0) drops frames simulating network packet loss. + */ + class NetworkQueue : public sys::Runnable + { + public: + NetworkQueue(const char* r) : inputHandler(0), receiver(r) { + thread=sys::Thread(this); + } + + ~NetworkQueue() { + queue.shutdown(); + thread.join(); + } + + void push(AMQFrame& f) { queue.push(f); } + + void run() { + AMQFrame f; + while (queue.waitPop(f)) { + Lock l(lock); + if (inputHandler) { + QPID_LOG(debug, QPID_MSG(receiver << " RECV: " << f)); + inputHandler->handle(f); + } + else { + QPID_LOG(debug, QPID_MSG(receiver << " DROP: " << f)); + } + } + } + + void setInputHandler(FrameHandler* h) { + Lock l(lock); + inputHandler = h; + } + + private: + sys::Mutex lock; + sys::ConcurrentQueue<AMQFrame> queue; + sys::Thread thread; + FrameHandler* inputHandler; + const char* const receiver; + }; + + struct InProcessHandler : public sys::ConnectionOutputHandler { + Sender from; + NetworkQueue queue; + const char* const sender; + + InProcessHandler(Sender s) + : from(s), + queue(from==CLIENT? "BROKER" : "CLIENT"), + sender(from==BROKER? "BROKER" : "CLIENT") + {} + + ~InProcessHandler() { } + + void send(AMQFrame& f) { + QPID_LOG(debug, QPID_MSG(sender << " SENT: " << f)); + queue.push(f); + } + + void close() { + // Do not shut down the queue here, we may be in + // the queue's dispatch thread. } - framing::AMQFrame frame; - Sender sender; }; - - typedef std::vector<TaggedFrame> Conversation; - InProcessBroker(framing::ProtocolVersion ver= - framing::highestProtocolVersion - ) : - Connector(ver), - protocolInit(ver), - broker(broker::Broker::create()), - brokerOut(BROKER, conversation), + InProcessConnector(shared_ptr<broker::Broker> b, + framing::ProtocolVersion v=framing::ProtocolVersion()) : + Connector(v), + protocolInit(v), + broker(b), + brokerOut(BROKER), brokerConnection(&brokerOut, *broker), - clientOut(CLIENT, conversation, &brokerConnection) - {} + clientOut(CLIENT), + isClosed(false) + { + clientOut.queue.setInputHandler(&brokerConnection); + } - ~InProcessBroker() { broker->shutdown(); } + ~InProcessConnector() { + close(); + + } void connect(const std::string& /*host*/, int /*port*/) {} + void init() { brokerConnection.initiated(protocolInit); } - void close() {} + + void close() { + if (!isClosed) { + isClosed = true; + brokerOut.close(); + clientOut.close(); + brokerConnection.closed(); + } + } /** Client's input handler. */ void setInputHandler(framing::InputHandler* handler) { - brokerOut.in = handler; + brokerOut.queue.setInputHandler(handler); } /** Called by client to send a frame */ void send(framing::AMQFrame& frame) { - clientOut.send(frame); + clientOut.handle(frame); } - /** Entire client-broker conversation is recorded here */ - Conversation conversation; + /** Sliently discard frames sent by either party, lost network traffic. */ + void discard() { + brokerOut.queue.setInputHandler(0); + clientOut.queue.setInputHandler(0); + } private: - /** OutputHandler that forwards data to an InputHandler */ - struct OutputToInputHandler : public sys::ConnectionOutputHandler { - OutputToInputHandler( - Sender sender_, Conversation& conversation_, - framing::InputHandler* ih=0 - ) : sender(sender_), conversation(conversation_), in(ih) {} - - void send(framing::AMQFrame& frame) { - QPID_LOG(debug, - (sender==CLIENT ? "CLIENT: " : "BROKER: ") << frame); - conversation.push_back(TaggedFrame(sender, frame)); - in->received(frame); - } - - void close() {} - - Sender sender; - Conversation& conversation; - framing::InputHandler* in; - }; - + sys::Mutex lock; framing::ProtocolInitiation protocolInit; - shared_ptr<Broker> broker; - OutputToInputHandler brokerOut; + shared_ptr<broker::Broker> broker; + InProcessHandler brokerOut; broker::Connection brokerConnection; - OutputToInputHandler clientOut; + InProcessHandler clientOut; + bool isClosed; }; -std::ostream& operator<<( - std::ostream& out, const InProcessBroker::TaggedFrame& tf) -{ - return out << (tf.fromBroker()? "BROKER: ":"CLIENT: ") << tf.frame; -} +struct InProcessConnection : public client::Connection { + InProcessConnection(shared_ptr<broker::Broker> b) + : client::Connection( + shared_ptr<client::Connector>( + new InProcessConnector(b))) + { + open(""); + } + + ~InProcessConnection() { } + + /** Simulate disconnected network connection. */ + void disconnect() { impl->getConnector()->close(); } + + /** Sliently discard frames sent by either party, lost network traffic. */ + void discard() { + dynamic_pointer_cast<InProcessConnector>( + impl->getConnector())->discard(); + } +}; -std::ostream& operator<<( - std::ostream& out, const InProcessBroker::Conversation& conv) -{ - copy(conv.begin(), conv.end(), - std::ostream_iterator<InProcessBroker::TaggedFrame>(out, "\n")); - return out; -} +/** A connector with its own broker */ +struct InProcessBroker : public InProcessConnector { + InProcessBroker() : InProcessConnector(broker::Broker::create()) {} +}; -} // namespace broker } // namespace qpid - #endif // _tests_InProcessBroker_h Modified: incubator/qpid/trunk/qpid/cpp/src/tests/Makefile.am URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/Makefile.am?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/Makefile.am (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/Makefile.am Fri Oct 26 12:48:31 2007 @@ -20,16 +20,10 @@ # Unit test programs. # -# FIXME aconway 2007-08-29: enable when session is reinstated. -# TESTS+=Session -# check_PROGRAMS+=Session -# Session_SOURCES=Session.cpp -# Session_LDADD=-lboost_unit_test_framework $(lib_broker) - -TESTS+=ResumeHandler -check_PROGRAMS+=ResumeHandler -ResumeHandler_SOURCES=ResumeHandler.cpp -ResumeHandler_LDADD=-lboost_unit_test_framework $(lib_common) +TESTS+=SessionState +check_PROGRAMS+=SessionState +SessionState_SOURCES=SessionState.cpp +SessionState_LDADD=-lboost_unit_test_framework $(lib_common) TESTS+=Blob check_PROGRAMS+=Blob Modified: incubator/qpid/trunk/qpid/cpp/src/tests/QueueTest.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/QueueTest.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/QueueTest.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/QueueTest.cpp Fri Oct 26 12:48:31 2007 @@ -54,7 +54,7 @@ public: void deliverTo(Queue::shared_ptr& queue) { - throw Exception(boost::format("Invalid delivery to %1%") % queue->getName()); + throw Exception(QPID_MSG("Invalid delivery to " << queue->getName())); } }; Added: incubator/qpid/trunk/qpid/cpp/src/tests/SessionState.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/SessionState.cpp?rev=588761&view=auto ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/SessionState.cpp (added) +++ incubator/qpid/trunk/qpid/cpp/src/tests/SessionState.cpp Fri Oct 26 12:48:31 2007 @@ -0,0 +1,142 @@ +/* + * + * Copyright (c) 2006 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#include "qpid/framing/SessionState.h" + +#define BOOST_AUTO_TEST_MAIN +#include <boost/test/auto_unit_test.hpp> +#include <boost/bind.hpp> + +using namespace std; +using namespace qpid::framing; +using namespace boost; + +// Create a frame with a one-char string. +AMQFrame& frame(char s) { + static AMQFrame frame; + frame.setBody(AMQContentBody(string(&s, 1))); + return frame; +} + +// Extract the one-char string from a frame. +char charFromFrame(const AMQFrame& f) { + const AMQContentBody* b=dynamic_cast<const AMQContentBody*>(f.getBody()); + BOOST_REQUIRE(b && b->getData().size() > 0); + return b->getData()[0]; +} + +// Sent chars as frames +void sent(SessionState& session, const std::string& frames) { + for_each(frames.begin(), frames.end(), + bind(&SessionState::sent, ref(session), bind(frame, _1))); +} + +// Received chars as frames +void received(SessionState& session, const std::string& frames) { + for_each(frames.begin(), frames.end(), + bind(&SessionState::received, session, bind(frame, _1))); +} + +// Make a string from a ReplayRange. +std::string replayChars(const SessionState::Replay& frames) { + string result(frames.size(), ' '); + transform(frames.begin(), frames.end(), result.begin(), + bind(&charFromFrame, _1)); + return result; +} + +namespace qpid { +namespace framing { + +bool operator==(const AMQFrame& a, const AMQFrame& b) { + const AMQContentBody* ab=dynamic_cast<const AMQContentBody*>(a.getBody()); + const AMQContentBody* bb=dynamic_cast<const AMQContentBody*>(b.getBody()); + return ab && bb && ab->getData() == bb->getData(); +} + +}} // namespace qpid::framing + + +BOOST_AUTO_TEST_CASE(testSent) { + // Test that we send solicit-ack at the right interval. + AMQContentBody f; + SessionState s1(1); + BOOST_CHECK(s1.sent(f)); + BOOST_CHECK(s1.sent(f)); + BOOST_CHECK(s1.sent(f)); + + SessionState s3(3); + BOOST_CHECK(!s3.sent(f)); + BOOST_CHECK(!s3.sent(f)); + BOOST_CHECK(s3.sent(f)); + + BOOST_CHECK(!s3.sent(f)); + BOOST_CHECK(!s3.sent(f)); + s3.receivedAck(4); + BOOST_CHECK(!s3.sent(f)); + BOOST_CHECK(!s3.sent(f)); + BOOST_CHECK(s3.sent(f)); +} + +BOOST_AUTO_TEST_CASE(testReplay) { + // Replay of all frames. + SessionState session(100); + sent(session, "abc"); + session.suspend(); session.resuming(); + session.receivedAck(-1); + BOOST_CHECK_EQUAL(replayChars(session.replay()), "abc"); + + // Replay with acks + session.receivedAck(0); // ack a. + session.suspend(); + session.resuming(); + session.receivedAck(1); // ack b. + BOOST_CHECK_EQUAL(replayChars(session.replay()), "c"); + + // Replay after further frames. + sent(session, "def"); + session.suspend(); + session.resuming(); + session.receivedAck(3); + BOOST_CHECK_EQUAL(replayChars(session.replay()), "ef"); + + // Bad ack, too high + try { + session.receivedAck(6); + BOOST_FAIL("expected exception"); + } catch(const qpid::Exception&) {} + +} + +BOOST_AUTO_TEST_CASE(testReceived) { + // Check that we request acks at the right interval. + AMQContentBody f; + SessionState s1(1); + BOOST_CHECK_EQUAL(0u, *s1.received(f)); + BOOST_CHECK_EQUAL(1u, *s1.received(f)); + BOOST_CHECK_EQUAL(2u, *s1.received(f)); + + SessionState s3(3); + BOOST_CHECK(!s3.received(f)); + BOOST_CHECK(!s3.received(f)); + BOOST_CHECK_EQUAL(2u, *s3.received(f)); + + BOOST_CHECK(!s3.received(f)); + BOOST_CHECK(!s3.received(f)); + BOOST_CHECK_EQUAL(5u, *s3.received(f)); +} Propchange: incubator/qpid/trunk/qpid/cpp/src/tests/SessionState.cpp ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/qpid/trunk/qpid/cpp/src/tests/SessionState.cpp ------------------------------------------------------------------------------ svn:keywords = Rev Date Modified: incubator/qpid/trunk/qpid/cpp/src/tests/Shlib.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/Shlib.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/Shlib.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/Shlib.cpp Fri Oct 26 12:48:31 2007 @@ -20,6 +20,7 @@ #include "test_tools.h" #include "qpid/sys/Shlib.h" +#include "qpid/Exception.h" #define BOOST_AUTO_TEST_MAIN // Must come before #include<boost/test/*> #include <boost/test/auto_unit_test.hpp> @@ -40,7 +41,7 @@ sh.getSymbol("callMe"); BOOST_FAIL("Expected exception"); } - catch (...) {} + catch (const qpid::Exception&) {} } BOOST_AUTO_TEST_CASE(testAutoShlib) { Modified: incubator/qpid/trunk/qpid/cpp/src/tests/TimerTest.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/TimerTest.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/TimerTest.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/TimerTest.cpp Fri Oct 26 12:48:31 2007 @@ -26,6 +26,7 @@ #include <iostream> #include <memory> #include <boost/format.hpp> +#include <boost/lexical_cast.hpp> using namespace qpid::broker; using namespace qpid::sys; Modified: incubator/qpid/trunk/qpid/cpp/src/tests/TxMocks.h URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/TxMocks.h?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/TxMocks.h (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/TxMocks.h Fri Oct 26 12:48:31 2007 @@ -25,7 +25,6 @@ #include "qpid/Exception.h" #include "qpid/broker/TransactionalStore.h" #include "qpid/broker/TxOp.h" -#include <boost/format.hpp> #include <iostream> #include <vector> @@ -40,9 +39,9 @@ i++; } if (i < expected.size()) { - throw qpid::Exception(boost::format("Missing %1%") % expected[i]); + throw qpid::Exception(QPID_MSG("Missing " << expected[i])); } else if (i < actual.size()) { - throw qpid::Exception(boost::format("Extra %1%") % actual[i]); + throw qpid::Exception(QPID_MSG("Extra " << actual[i])); } CPPUNIT_ASSERT_EQUAL(expected.size(), actual.size()); } Modified: incubator/qpid/trunk/qpid/cpp/src/tests/client_test.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/client_test.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/client_test.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/client_test.cpp Fri Oct 26 12:48:31 2007 @@ -29,7 +29,6 @@ #include <iostream> #include "TestOptions.h" -#include "qpid/QpidError.h" #include "qpid/client/Channel.h" #include "qpid/client/Connection.h" #include "qpid/client/Message.h" Modified: incubator/qpid/trunk/qpid/cpp/src/tests/echo_service.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/echo_service.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/echo_service.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/echo_service.cpp Fri Oct 26 12:48:31 2007 @@ -27,7 +27,6 @@ * sender-specified private queue. */ -#include "qpid/QpidError.h" #include "qpid/client/Channel.h" #include "qpid/client/Connection.h" #include "qpid/client/Exchange.h" Modified: incubator/qpid/trunk/qpid/cpp/src/tests/exception_test.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/exception_test.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/exception_test.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/exception_test.cpp Fri Oct 26 12:48:31 2007 @@ -22,7 +22,6 @@ #include <iostream> #include "TestOptions.h" -#include "qpid/QpidError.h" #include "qpid/client/Channel.h" #include "qpid/client/Connection.h" #include "qpid/client/Message.h" Modified: incubator/qpid/trunk/qpid/cpp/src/tests/interop_runner.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/interop_runner.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/interop_runner.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/interop_runner.cpp Fri Oct 26 12:48:31 2007 @@ -21,7 +21,6 @@ #include "qpid/Options.h" #include "qpid/Exception.h" -#include "qpid/QpidError.h" #include "qpid/client/Channel.h" #include "qpid/client/Connection.h" #include "qpid/client/Exchange.h" Modified: incubator/qpid/trunk/qpid/cpp/src/tests/logging.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/logging.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/logging.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/logging.cpp Fri Oct 26 12:48:31 2007 @@ -71,22 +71,18 @@ BOOST_CHECK(s.isEnabled(critical, "oops")); } -Logger& clearLogger() { - Logger::instance().clear(); - return Logger::instance(); -} - BOOST_AUTO_TEST_CASE(testStatementEnabled) { - // Verify that the logger enables and disables log statements. - Logger& l=clearLogger(); + // Verify that the singleton enables and disables static + // log statements. + Logger& l = Logger::instance(); l.select(Selector(debug)); - Statement s=QPID_LOG_STATEMENT_INIT(debug); + static Statement s=QPID_LOG_STATEMENT_INIT(debug); BOOST_CHECK(!s.enabled); - Statement::Initializer init(s); + static Statement::Initializer init(s); BOOST_CHECK(s.enabled); - Statement s2=QPID_LOG_STATEMENT_INIT(warning); - Statement::Initializer init2(s2); + static Statement s2=QPID_LOG_STATEMENT_INIT(warning); + static Statement::Initializer init2(s2); BOOST_CHECK(!s2.enabled); l.select(Selector(warning)); @@ -98,9 +94,10 @@ vector<string> msg; vector<Statement> stmt; - TestOutput() { - Logger::instance().output(qpid::make_auto_ptr<Logger::Output>(this)); + TestOutput(Logger& l) { + l.output(std::auto_ptr<Logger::Output>(this)); } + void log(const Statement& s, const string& m) { msg.push_back(m); stmt.push_back(s); @@ -111,10 +108,12 @@ using boost::assign::list_of; BOOST_AUTO_TEST_CASE(testLoggerOutput) { - Logger& l=clearLogger(); + Logger l; + l.clear(); l.select(Selector(debug)); Statement s=QPID_LOG_STATEMENT_INIT(debug); - TestOutput* out=new TestOutput(); + + TestOutput* out=new TestOutput(l); // Verify message is output. l.log(s, "foo"); @@ -122,7 +121,7 @@ BOOST_CHECK_EQUAL(expect, out->msg); // Verify multiple outputs - TestOutput* out2=new TestOutput(); + TestOutput* out2=new TestOutput(l); l.log(Statement(), "baz"); expect.push_back("baz\n"); BOOST_CHECK_EQUAL(expect, out->msg); @@ -131,9 +130,10 @@ } BOOST_AUTO_TEST_CASE(testMacro) { - Logger& l = clearLogger(); + Logger& l=Logger::instance(); + l.clear(); l.select(Selector(info)); - TestOutput* out=new TestOutput(); + TestOutput* out=new TestOutput(l); QPID_LOG(info, "foo"); vector<string> expect=list_of("foo\n"); BOOST_CHECK_EQUAL(expect, out->msg); @@ -150,9 +150,9 @@ } BOOST_AUTO_TEST_CASE(testLoggerFormat) { - Logger& l=clearLogger(); + Logger& l = Logger::instance(); l.select(Selector(critical)); - TestOutput* out=new TestOutput(); + TestOutput* out=new TestOutput(l); // Time format is YYY-Month-dd hh:mm:ss l.format(Logger::TIME); @@ -183,7 +183,8 @@ } BOOST_AUTO_TEST_CASE(testOstreamOutput) { - Logger& l=clearLogger(); + Logger& l=Logger::instance(); + l.clear(); l.select(Selector(error)); ostringstream os; l.output(os); @@ -191,12 +192,12 @@ QPID_LOG(error, "bar"); QPID_LOG(error, "baz"); BOOST_CHECK_EQUAL("foo\nbar\nbaz\n", os.str()); - l.clear(); } #if 0 // This test requires manual intervention. Normally disabled. BOOST_AUTO_TEST_CASE(testSyslogOutput) { - Logger& l = clearLogger(); + Logger& l=Logger::instance(); + l.clear(); l.select(Selector(info)); l.syslog("qpid_test"); QPID_LOG(info, "Testing QPID"); @@ -312,7 +313,7 @@ } BOOST_AUTO_TEST_CASE(testOptionsFormat) { - Logger& l = clearLogger(); + Logger l; { Options opts; BOOST_CHECK_EQUAL(Logger::TIME|Logger::LEVEL, l.format(opts)); @@ -344,7 +345,8 @@ } BOOST_AUTO_TEST_CASE(testLoggerConfigure) { - Logger& l = clearLogger(); + Logger& l=Logger::instance(); + l.clear(); Options opts; char* argv[]={ 0, Modified: incubator/qpid/trunk/qpid/cpp/src/tests/perftest.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/perftest.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/perftest.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/perftest.cpp Fri Oct 26 12:48:31 2007 @@ -27,7 +27,6 @@ #include "qpid/client/Connection.h" #include "qpid/client/MessageListener.h" #include "qpid/client/Message.h" -#include "qpid/QpidError.h" #include "qpid/sys/Monitor.h" #include "qpid/sys/Time.h" Modified: incubator/qpid/trunk/qpid/cpp/src/tests/run-unit-tests URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/run-unit-tests?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/run-unit-tests (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/run-unit-tests Fri Oct 26 12:48:31 2007 @@ -24,5 +24,5 @@ test -z "$srcdir" && srcdir=. # libdlclose_noop prevents unloading symbols needed for valgrind output. -LD_PRELOAD=.libs/libdlclose_noop.so exec $srcdir/test_env DllPlugInTester -c -b $TEST_ARGS - +export LD_PRELOAD=.libs/libdlclose_noop.so +source $srcdir/run_test DllPlugInTester -c -b $TEST_ARGS Modified: incubator/qpid/trunk/qpid/cpp/src/tests/topic_listener.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/topic_listener.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/topic_listener.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/topic_listener.cpp Fri Oct 26 12:48:31 2007 @@ -32,7 +32,6 @@ * listening). */ -#include "qpid/QpidError.h" #include "TestOptions.h" #include "qpid/client/Channel.h" #include "qpid/client/Connection.h" Modified: incubator/qpid/trunk/qpid/cpp/src/tests/topic_publisher.cpp URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/topic_publisher.cpp?rev=588761&r1=588760&r2=588761&view=diff ============================================================================== --- incubator/qpid/trunk/qpid/cpp/src/tests/topic_publisher.cpp (original) +++ incubator/qpid/trunk/qpid/cpp/src/tests/topic_publisher.cpp Fri Oct 26 12:48:31 2007 @@ -35,7 +35,6 @@ */ #include "TestOptions.h" -#include "qpid/QpidError.h" #include "qpid/client/Channel.h" #include "qpid/client/Connection.h" #include "qpid/client/Exchange.h"
