Update of /cvsroot/cppunit/cppunit2/include/opentest
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4621/include/opentest
Modified Files:
sharedmemorytransport.h
Added Files:
serializedtesttransport.h
Log Message:
* added end to end test for shared memory transport.
Index: sharedmemorytransport.h
===================================================================
RCS file: /cvsroot/cppunit/cppunit2/include/opentest/sharedmemorytransport.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** sharedmemorytransport.h 6 Sep 2005 07:31:42 -0000 1.3
--- sharedmemorytransport.h 7 Mar 2006 23:02:55 -0000 1.4
***************
*** 24,35 ****
class SharedMemoryTransportImpl;
! struct SharedMemoryConfig
{
SharedMemoryConfig()
: bufferSize_( 512 * 1024 ) // 512k
{
}
unsigned int bufferSize_;
};
--- 24,40 ----
class SharedMemoryTransportImpl;
! class SharedMemoryConfig
{
+ public:
+ typedef void (*LogFn)( const char *format, ... );
+
SharedMemoryConfig()
: bufferSize_( 512 * 1024 ) // 512k
+ , log_( 0 )
{
}
unsigned int bufferSize_;
+ LogFn log_;
};
***************
*** 46,49 ****
--- 51,56 ----
virtual ~SharedMemoryTransport();
+ std::string transportName() const;
+
public: // overriden from MessageTransport
--- NEW FILE: serializedtesttransport.h ---
#ifndef OPENTEST_SERIALIZEDTESTTRANSPORT_H_INCLUDED
# define OPENTEST_SERIALIZEDTESTTRANSPORT_H_INCLUDED
// for unit testing.
# include <opentest/forwards.h>
# include <opentest/remoteinterfaces.h>
# include <deque>
namespace OpenTest {
class SerializedTestTransport : public MessageTransport
{
public: // overriden from MessageTransport
void sendMessage( const RemoteMessagePtr &message );
void dispatchReceivedMessages( RemoteMessageServer &server );
private:
typedef std::deque<RemoteMessagePtr> Messages;
Messages messages_;
};
inline void
SerializedTestTransport::sendMessage( const RemoteMessagePtr &message )
{
messages_.push_back( message );
}
inline void
SerializedTestTransport::dispatchReceivedMessages( RemoteMessageServer &server )
{
Messages toDispatch;
toDispatch.swap( messages_ );
while ( !toDispatch.empty() )
{
server.dispatchMessage( toDispatch.front() );
toDispatch.pop_front();
}
}
} // namespace OpenTest
#endif // OPENTEST_SERIALIZEDTESTTRANSPORT_H_INCLUDED
|