Reduced preprocessor macros

git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@767 860be788-9bd5-4423-9f1e-828f051e677b
This commit is contained in:
mat007 2015-03-01 11:28:10 +00:00
parent e76e9fb5bc
commit 20be7d84d0
2 changed files with 10 additions and 16 deletions

View file

@ -27,16 +27,6 @@
#define MOCK_EXPECTATION_SERIALIZE(z, n, d) \ #define MOCK_EXPECTATION_SERIALIZE(z, n, d) \
BOOST_PP_IF(n, << ", " <<,) *e.c##n##_ BOOST_PP_IF(n, << ", " <<,) *e.c##n##_
#define MOCK_EXPECTATION_IN_ADD(z, n, d ) \
s##n.impl_->add( this ); sequences_.push_back( s##n.impl_ );
#define MOCK_EXPECTATION_IN(z, n, d) \
expectation& in( BOOST_PP_ENUM_PARAMS(n, sequence& s) ) \
{ \
BOOST_PP_REPEAT(n, MOCK_EXPECTATION_IN_ADD, _ ) \
return *this; \
}
namespace mock namespace mock
{ {
namespace detail namespace detail
@ -91,8 +81,11 @@ namespace detail
} }
#endif #endif
BOOST_PP_REPEAT(MOCK_MAX_SEQUENCES, void add( sequence& s )
MOCK_EXPECTATION_IN, _) {
s.impl_->add( this );
sequences_.push_back( s.impl_ );
}
bool verify() const bool verify() const
{ {
@ -160,12 +153,9 @@ namespace detail
} }
} // mock } // mock
#undef MOCK_EXPECTATION_TYPEDEF
#undef MOCK_EXPECTATION_INITIALIZE #undef MOCK_EXPECTATION_INITIALIZE
#undef MOCK_EXPECTATION_WITH #undef MOCK_EXPECTATION_WITH
#undef MOCK_EXPECTATION_MEMBER #undef MOCK_EXPECTATION_MEMBER
#undef MOCK_EXPECTATION_ARGS #undef MOCK_EXPECTATION_ARGS
#undef MOCK_EXPECTATION_IS_VALID #undef MOCK_EXPECTATION_IS_VALID
#undef MOCK_EXPECTATION_SERIALIZE #undef MOCK_EXPECTATION_SERIALIZE
#undef MOCK_EXPECTATION_IN
#undef MOCK_EXPECTATION_IN_ADD

View file

@ -142,10 +142,13 @@ namespace detail
} }
#endif #endif
#define MOCK_FUNCTION_IN_ADD(z, n, d) \
this->e_->add( s##n );
#define MOCK_FUNCTION_IN(z, n, d) \ #define MOCK_FUNCTION_IN(z, n, d) \
wrapper in( BOOST_PP_ENUM_PARAMS(n, sequence& s) ) \ wrapper in( BOOST_PP_ENUM_PARAMS(n, sequence& s) ) \
{ \ { \
this->e_->in( BOOST_PP_ENUM_PARAMS(n, s) ); \ BOOST_PP_REPEAT(n, MOCK_FUNCTION_IN_ADD, _) \
return *this; \ return *this; \
} }
@ -153,6 +156,7 @@ namespace detail
MOCK_FUNCTION_IN, _) MOCK_FUNCTION_IN, _)
#undef MOCK_FUNCTION_IN #undef MOCK_FUNCTION_IN
#undef MOCK_FUNCTION_IN_ADD
template< typename TT > template< typename TT >
void calls( TT t ) void calls( TT t )