[Mockpp-commits] mockpp/mockpp/chaining AbstractDynamicChainingMock.h,1.26,1.27 InvocationMocker.h,1
Brought to you by:
ewald-arnold
From: Ewald A. <ewa...@us...> - 2005-04-04 08:57:42
|
Update of /cvsroot/mockpp/mockpp/mockpp/chaining In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26323/mockpp/chaining Modified Files: AbstractDynamicChainingMock.h InvocationMocker.h mockpp_pti.h Log Message: more efforts for msvc6 Index: mockpp_pti.h =================================================================== RCS file: /cvsroot/mockpp/mockpp/mockpp/chaining/mockpp_pti.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- mockpp_pti.h 3 Apr 2005 21:49:57 -0000 1.7 +++ mockpp_pti.h 4 Apr 2005 08:57:33 -0000 1.8 @@ -40,7 +40,8 @@ #include <mockpp/chaining/InvocationMocker.h> #include <mockpp/chaining/AbstractDynamicChainingMock.h> - +///////////////////////////////////// +// keep order #define MOCKPP_PTI_IMPLEMENT(I) \ MOCKPP_TYPELESSSTUBADAPTER_PTI_IMPL(I) \ MOCKPP_FIFOINVOCATIONDISPATCHER_PTI_IMPL(I) \ @@ -49,6 +50,8 @@ MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_IMPL(I) \ MOCKPP_COREMOCK_PTI_IMPL(I) +///////////////////////////////////// +// keep order #define MOCKPP_PTI_DECLARE(I) \ MOCKPP_TYPELESSSTUBADAPTER_PTI_DECL(I) \ MOCKPP_FIFOINVOCATIONDISPATCHER_PTI_DECL(I) \ Index: InvocationMocker.h =================================================================== RCS file: /cvsroot/mockpp/mockpp/mockpp/chaining/InvocationMocker.h,v retrieving revision 1.31 retrieving revision 1.32 diff -u -d -r1.31 -r1.32 --- InvocationMocker.h 3 Apr 2005 18:32:53 -0000 1.31 +++ InvocationMocker.h 4 Apr 2005 08:57:33 -0000 1.32 @@ -433,53 +433,52 @@ }; -#define MOCKPP_INVOCATIONMOCKER_PTI_IMPL(I) -#define MOCKPP_INVOCATIONMOCKER_PTI_DECL(I) +#define MOCKPP_INVOCATIONMOCKER_PTI_IMPL(I) +#define MOCKPP_INVOCATIONMOCKER_PTI_DECL(I) #else // MOCKPP_PTI_WEAKNESS Partial Template Instantiation Weakness -/** Declare specialized methods for mockpp::InvocationMocker. - * Neccessary for compiler with weak template capabilities. +/** Declare a specialized class for mockpp::InvocationMocker. + * Neccessary for compilers with weak template capabilities. */ #define MOCKPP_INVOCATIONMOCKER_PTI_DECL(I) \ -namespace mockpp { \ -template<> \ -class InvocationMocker<void, I> : public InvocationMockerBase<void, I>; \ -} +namespace mockpp { \ +template<> \ +class InvocationMocker<void, I>; \ +} -/** Implement specialized methods for mockpp::InvocationMocker. - * Neccessary for compiler with weak template capabilities. +/** Implement a specialized class for mockpp::InvocationMocker. + * Neccessary for compilers with weak template capabilities. */ #define MOCKPP_INVOCATIONMOCKER_PTI_IMPL(I) \ -namespace mockpp { \ +namespace mockpp { \ template<> \ -class InvocationMocker<void, I> : public InvocationMockerBase<void, I> \ -{ \ - InvocationMocker<void, I >::InvocationMocker<void, I >() \ - : InvocationMockerBase<void, I >( new InvocationMockerBase<void, I >::DefaultDescriber(), \ - new TypelessStubAdapter<void, I >(new VoidStub)) \ - { \ - } \ - \ - mockpp::InvocationMocker<void, I >::InvocationMocker<void, I >(\ - AutoPointer<mockpp::InvocationMockerBase<void, I >::DescriberBase> in_describer ) \ - : InvocationMockerBase<void, I >( in_describer, \ - new TypelessStubAdapter<void, I >(new VoidStub)) \ - { \ - } \ -\ - void InvocationMocker<void, I >::invoke( const I &invocation ) \ - { \ - for ( Iterator it = this->matchers.begin(); it != this->matchers.end(); ++it ) \ - ( *it ) ->incInvoked( invocation ); \ - this->stub->invoke( invocation ); \ - } \ -}; /* class */ \ -} // ns - +class InvocationMocker<void, I> : public InvocationMockerBase<void, I> \ +{ \ + public: \ + InvocationMocker<void, I >() \ + : InvocationMockerBase<void, I >( new InvocationMockerBase<void, I >::DefaultDescriber(), \ + new TypelessStubAdapter<void, I >(new VoidStub)) \ + {} \ + \ + InvocationMocker<void, I >(\ + AutoPointer<mockpp::InvocationMockerBase<void, I >::DescriberBase> in_describer ) \ + : InvocationMockerBase<void, I >( in_describer, \ + new TypelessStubAdapter<void, I >(new VoidStub)) \ + {} \ + \ + void invoke( const I &invocation ) \ + { \ + for ( Iterator it = this->matchers.begin(); it != this->matchers.end(); ++it ) \ + ( *it ) ->incInvoked( invocation ); \ + this->stub->invoke( invocation ); \ + } \ +}; \ +} + #endif // MOCKPP_PTI_WEAKNESS Index: AbstractDynamicChainingMock.h =================================================================== RCS file: /cvsroot/mockpp/mockpp/mockpp/chaining/AbstractDynamicChainingMock.h,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- AbstractDynamicChainingMock.h 3 Apr 2005 18:32:46 -0000 1.26 +++ AbstractDynamicChainingMock.h 4 Apr 2005 08:57:33 -0000 1.27 @@ -344,44 +344,64 @@ }; -#define MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_IMPL(I) -#define MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_DECL(I) +#define MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_IMPL(I) +#define MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_DECL(I) #else // MOCKPP_PTI_WEAKNESS Partial Template Instantiation Weakness -/** Declare specialized methods for mockpp::AbstractDynamicChainingMock. - * Neccessary for compiler with weak template capabilities. +/** Declare a specialized class for mockpp::AbstractDynamicChainingMock. + * Neccessary for compilers with weak template capabilities. */ #define MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_DECL(I) \ +namespace mockpp { \ template<> \ -void mockpp::AbstractDynamicChainingMock<void, I >::mockInvocation( const I &invocation ); +void mockpp::AbstractDynamicChainingMock<void, I >; \ +} -/** Implement specialized methods for mockpp::AbstractDynamicChainingMock. - * Neccessary for compiler with weak template capabilities. + +/** Implement a specialized class for mockpp::AbstractDynamicChainingMock. + * Neccessary for compilers with weak template capabilities. */ #define MOCKPP_ABSTRACTDYNAMICCHAININGMOCK_PTI_IMPL(I) \ +namespace mockpp { \ template<> \ -void mockpp::AbstractDynamicChainingMock<void, I >::mockInvocation( const I &invocation ) \ +class AbstractDynamicChainingMock<void, I> : public AbstractDynamicChainingMockImpl<void, I> \ { \ - if ( this->failure.get() != 0 ) \ - throw *this->failure.get(); \ - \ - try \ - { \ - this->invocationDispatcher->dispatch( invocation ); \ - } \ - \ - catch ( const AssertionFailedError & assertion ) \ + public: \ + AbstractDynamicChainingMock( InvocationDispatcher<void, I>::AP invocationDispatcher, \ + const String &name, \ + VerifiableList *parent) \ + : AbstractDynamicChainingMockImpl<void, I>(invocationDispatcher, name, parent) \ + {} \ + \ + AbstractDynamicChainingMock( const String &name, \ + VerifiableList *parent) \ + : AbstractDynamicChainingMockImpl<void, I>(new FIFOInvocationDispatcher<void,I>, name, parent) \ + {} \ + \ + void mockInvocation( const I &invocation ) \ { \ - DynamicChainingMockError<void, I > dme( this, \ - invocation, \ - this->invocationDispatcher.get(), \ - assertion.getMessage() ); \ - this->failure.reset( new AssertionFailedError(__LINE__, __FILE__, dme.getMessage())); \ - throw *this->failure.get(); \ + if ( this->failure.get() != 0 ) \ + throw *this->failure.get(); \ + \ + try \ + { \ + this->invocationDispatcher->dispatch( invocation ); \ + } \ + \ + catch ( const AssertionFailedError & assertion ) \ + { \ + DynamicChainingMockError<void, I > dme( this, \ + invocation, \ + this->invocationDispatcher.get(), \ + assertion.getMessage() ); \ + this->failure.reset( new AssertionFailedError(__LINE__, __FILE__, dme.getMessage())); \ + throw *this->failure.get(); \ + } \ } \ +}; \ } |