[Cppunit-cvs] cppunit2/include/opentest remoteinterfaces.h,NONE,1.1
Brought to you by:
blep
From: Baptiste L. <bl...@us...> - 2005-06-24 20:12:10
|
Update of /cvsroot/cppunit/cppunit2/include/opentest In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29713/include/opentest Added Files: remoteinterfaces.h Log Message: Remote interface for TestRunner / TestDriver connection (serialize message) --- NEW FILE: remoteinterfaces.h --- #ifndef OPENTEST_REMOTEINTERFACES_H_INCLUDED # define OPENTEST_REMOTEINTERFACES_H_INCLUDED # include <opentest/interfaces.h> namespace OpenTest { enum MessageId { driverMessageSetTestDescriptions = 1, minMessageId = driverMessageSetTestDescriptions, driverMessageSetDefaultTestPlan, driverMessageStartTesting, driverMessageAddResultLog, driverMessageAddResultAssertion, driverMessageSetResultInputActualOutput, driverMessageSetTestResult, driverMessageTestPlanDone, runnerMessageGetTestDescriptions, runnerMessageGetTestPlans, runnerMessageRunTests, runnerMessageStopTest, maxMessageId = runnerMessageStopTest }; Stream & OPENTEST_API operator <<( Stream &stream, MessageId id ); Stream & OPENTEST_API operator >>( Stream &stream, MessageId &id ); class MessageSender { public: virtual ~MessageSender() { } Stream &stream() { CPPTL_ASSERT_MESSAGE( stream_ != 0, "No stream attached to remote proxy." ); return *stream_; } void beginMessage( MessageId message ); void sendMessage() { // @todo } private: Stream *stream_; }; class TestDriverProxy : public TestDriverInterface , public MessageSender { public: // overridden from TestDriverInterface void setTestDescriptions( TestDescriptions &tests ); void setDefaultTestPlan( const TestPlan &plan ); void startTesting( TestId testPlan ); void addResultLog( TestId testPlan, const ResultLog &log ); void addResultAssertion( TestId testPlan, const ResultAssertion &assertion ); void setResultInputActualOutput( TestId testPlan, const ResultInputOutput &output ); void setTestResult( TestId testPlan, ResultStatus &status ); void testPlanDone( TestPlanId id ); }; class MessageServer { public: virtual ~MessageServer() { } Stream &stream() { CPPTL_ASSERT_MESSAGE( stream_ != 0, "No stream attached to message sender." ); return *stream_; } private: virtual void processMessageStream() = 0; Stream *stream_; }; class TestDriverServer : public MessageServer { public: TestDriverServer( TestDriverInterface &impl ) : impl_( &impl ) { } public: // overridden from MessageServer void processMessageStream(); private: TestDriverInterface *impl_; }; class TestRunnerProxy : public TestRunnerInterface , public MessageSender { public: // overridden from TestRunnerInterface void getTestDescriptions(); void getTestPlans(); void runTests( const TestPlan &plan ); void stopTest(); }; } // namespace OpenTest #endif // OPENTEST_REMOTEINTERFACES_H_INCLUDED |