From 3b3700fda6326e234b4f044d19d34d43319352fb Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 9 Jul 2020 18:44:36 +0200 Subject: [PATCH] Assume support for variadic macros --- include/turtle/config.hpp | 6 ------ include/turtle/constraint.hpp | 4 ---- include/turtle/mock.hpp | 33 --------------------------------- test/test_constraint.cpp | 4 ---- test/test_mock.cpp | 30 ------------------------------ 5 files changed, 77 deletions(-) diff --git a/include/turtle/config.hpp b/include/turtle/config.hpp index f1daeb0..744883f 100644 --- a/include/turtle/config.hpp +++ b/include/turtle/config.hpp @@ -40,12 +40,6 @@ # error BOOST_FT_MAX_ARITY must be set to MOCK_MAX_ARGS + 1 or higher #endif -#if !defined(BOOST_NO_CXX11_VARIADIC_MACROS) && !defined(BOOST_NO_VARIADIC_MACROS) -# ifndef MOCK_NO_VARIADIC_MACROS -# define MOCK_VARIADIC_MACROS -# endif -#endif - #if !defined(BOOST_NO_CXX11_SMART_PTR) && !defined(BOOST_NO_SMART_PTR) # ifndef MOCK_NO_SMART_PTR # define MOCK_SMART_PTR diff --git a/include/turtle/constraint.hpp b/include/turtle/constraint.hpp index 2e0d1e0..ff744dc 100644 --- a/include/turtle/constraint.hpp +++ b/include/turtle/constraint.hpp @@ -220,8 +220,6 @@ namespace detail MOCK_NARY_CONSTRAINT, \ MOCK_UNARY_CONSTRAINT)(Name, n, Args, Expr) -#ifdef MOCK_VARIADIC_MACROS - #ifdef BOOST_MSVC # define MOCK_VARIADIC_SIZE(...) \ BOOST_PP_CAT(MOCK_VARIADIC_SIZE_I(__VA_ARGS__, \ @@ -253,6 +251,4 @@ namespace detail MOCK_CONSTRAINT_AUX( \ Name, MOCK_VARIADIC_SIZE(__VA_ARGS__), (__VA_ARGS__)) -#endif // MOCK_VARIADIC_MACROS - #endif // MOCK_CONSTRAINT_HPP_INCLUDED diff --git a/include/turtle/mock.hpp b/include/turtle/mock.hpp index 49faacb..83d8be5 100644 --- a/include/turtle/mock.hpp +++ b/include/turtle/mock.hpp @@ -29,8 +29,6 @@ #define MOCK_FUNCTION_TYPE(S, tpn) \ std::remove_pointer_t< tpn BOOST_IDENTITY_TYPE(S) > -#ifdef MOCK_VARIADIC_MACROS - #define MOCK_BASE_CLASS(T, ...) \ struct T : __VA_ARGS__, mock::object, mock::detail::base< __VA_ARGS__ > @@ -40,19 +38,6 @@ mock::detail::functor< \ MOCK_FUNCTION_TYPE((__VA_ARGS__), typename) > f, f##_mock -#else // MOCK_VARIADIC_MACROS - -#define MOCK_BASE_CLASS(T, I) \ - struct T : I, mock::object, mock::detail::base< I > - -#define MOCK_FUNCTOR(f, S) \ - mock::detail::functor< MOCK_FUNCTION_TYPE((S),) > f, f##_mock -#define MOCK_FUNCTOR_TPL(f, S) \ - mock::detail::functor< \ - MOCK_FUNCTION_TYPE((S), typename) > f, f##_mock - -#endif // MOCK_VARIADIC_MACROS - #define MOCK_HELPER(t) \ t##_mock( mock::detail::root, BOOST_PP_STRINGIZE(t) ) #define MOCK_ANONYMOUS_HELPER(t) \ @@ -172,8 +157,6 @@ return MOCK_HELPER(t)( MOCK_FORWARD_PARAMS(n, S, tpn) ); \ } -#ifdef MOCK_VARIADIC_MACROS - #define MOCK_VARIADIC_ELEM_0(e0, ...) e0 #define MOCK_VARIADIC_ELEM_1(e0, e1, ...) e1 #define MOCK_VARIADIC_ELEM_2(e0, e1, e2, ...) e2 @@ -225,22 +208,6 @@ MOCK_VARIADIC_ELEM_1(__VA_ARGS__, F, ), \ static, typename) -#else // MOCK_VARIADIC_MACROS - -#define MOCK_METHOD(M, n) \ - MOCK_METHOD_EXT(M, n, MOCK_SIGNATURE(M), M) - -#define MOCK_FUNCTION(F, n, S, t) \ - MOCK_FUNCTION_AUX(F, n, S, t, inline,) - -#define MOCK_STATIC_METHOD(F, n, S, t) \ - MOCK_FUNCTION_AUX(F, n, S, t, static,) - -#define MOCK_STATIC_METHOD_TPL(F, n, S, t) \ - MOCK_FUNCTION_AUX(F, n, S, t, static, typename) - -#endif // MOCK_VARIADIC_MACROS - #define MOCK_EXPECT(t) MOCK_HELPER(t).expect( __FILE__, __LINE__ ) #define MOCK_RESET(t) MOCK_HELPER(t).reset( __FILE__, __LINE__ ) #define MOCK_VERIFY(t) MOCK_HELPER(t).verify( __FILE__, __LINE__ ) diff --git a/test/test_constraint.cpp b/test/test_constraint.cpp index c690d07..3aebf11 100644 --- a/test/test_constraint.cpp +++ b/test/test_constraint.cpp @@ -9,8 +9,6 @@ #include #include -#ifdef MOCK_VARIADIC_MACROS - namespace { MOCK_CONSTRAINT( constraint_0, actual == 0 ) @@ -25,8 +23,6 @@ BOOST_AUTO_TEST_CASE( mock_constraint_is_supported_by_compilers_with_variadic_ma BOOST_CHECK( constraint_2( 0, 0 ).c_( 0 ) ); } -#endif // MOCK_VARIADIC_MACROS - namespace { MOCK_CONSTRAINT_EXT( constraint_0_ext, 0,, actual == 0 ) diff --git a/test/test_mock.cpp b/test/test_mock.cpp index 2e4f41c..d73a932 100644 --- a/test/test_mock.cpp +++ b/test/test_mock.cpp @@ -356,8 +356,6 @@ namespace MOCK_FUNCTION( fun0, 0, BOOST_IDENTITY_TYPE((std::map< int, int >())), fun0 ) } -#ifdef MOCK_VARIADIC_MACROS - namespace { struct base @@ -409,32 +407,6 @@ namespace MOCK_FUNCTOR( f_variadic, std::map< int, int >() ); } -#else // MOCK_VARIADIC_MACROS - -namespace -{ - struct base - { - virtual ~base() - {} - - virtual void m1() = 0; - }; - - MOCK_BASE_CLASS( derived, base ) - { - MOCK_METHOD( m1, 0 ) - }; - - template< typename T > - MOCK_BASE_CLASS( derived_tpl, base ) - { - MOCK_METHOD_EXT( m1, 0, void(), m1 ) - }; -} - -#endif // MOCK_VARIADIC_MACROS - #ifdef BOOST_MSVC # define MOCK_STDCALL __stdcall #else @@ -458,9 +430,7 @@ namespace stdcall MOCK_CONVERSION_OPERATOR( MOCK_STDCALL operator, int, to_int ) MOCK_METHOD_EXT( MOCK_STDCALL m1, 0, void(), m1 ) MOCK_METHOD_EXT( MOCK_STDCALL m2, 0, void(), m2 ) -#ifdef MOCK_VARIADIC_MACROS MOCK_METHOD( MOCK_STDCALL m3, 0, void(), m3 ) -#endif MOCK_STATIC_METHOD( MOCK_STDCALL m4, 0, void(), m4 ) };