Googletest export
Pass method's parameters count to internal GMOCK_METHOD* macro. This will help removing copypaste in every GMOCK_METHOD* macro in future. PiperOrigin-RevId: 292932554
This commit is contained in:
		@@ -244,21 +244,19 @@ using identity_t = T;
 | 
			
		||||
              GMOCK_PP_IDENTITY)                                       \
 | 
			
		||||
  (_elem)
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_PARAMETER(_i, _Signature, _)        \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                                    \
 | 
			
		||||
  GMOCK_INTERNAL_ARG_O(typename, GMOCK_PP_INC(_i),         \
 | 
			
		||||
                       GMOCK_PP_REMOVE_PARENS(_Signature)) \
 | 
			
		||||
#define GMOCK_INTERNAL_PARAMETER(_i, _Signature, _)                          \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                                                      \
 | 
			
		||||
  GMOCK_INTERNAL_ARG_O(GMOCK_PP_INC(_i), GMOCK_PP_REMOVE_PARENS(_Signature)) \
 | 
			
		||||
  gmock_a##_i
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_FORWARD_ARG(_i, _Signature, _)                       \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                                                     \
 | 
			
		||||
  ::std::forward<GMOCK_INTERNAL_ARG_O(typename, GMOCK_PP_INC(_i),           \
 | 
			
		||||
                                      GMOCK_PP_REMOVE_PARENS(_Signature))>( \
 | 
			
		||||
      gmock_a##_i)
 | 
			
		||||
#define GMOCK_INTERNAL_FORWARD_ARG(_i, _Signature, _) \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                               \
 | 
			
		||||
  ::std::forward<GMOCK_INTERNAL_ARG_O(                \
 | 
			
		||||
      GMOCK_PP_INC(_i), GMOCK_PP_REMOVE_PARENS(_Signature))>(gmock_a##_i)
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_MATCHER_PARAMETER(_i, _Signature, _)    \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                                        \
 | 
			
		||||
  GMOCK_INTERNAL_MATCHER_O(typename, GMOCK_PP_INC(_i),         \
 | 
			
		||||
  GMOCK_INTERNAL_MATCHER_O(GMOCK_PP_INC(_i),                   \
 | 
			
		||||
                           GMOCK_PP_REMOVE_PARENS(_Signature)) \
 | 
			
		||||
  gmock_a##_i
 | 
			
		||||
 | 
			
		||||
@@ -266,14 +264,168 @@ using identity_t = T;
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                             \
 | 
			
		||||
  gmock_a##_i
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_A_MATCHER_ARGUMENT(_i, _Signature, _)    \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                                         \
 | 
			
		||||
  ::testing::A<GMOCK_INTERNAL_ARG_O(typename, GMOCK_PP_INC(_i), \
 | 
			
		||||
#define GMOCK_INTERNAL_A_MATCHER_ARGUMENT(_i, _Signature, _) \
 | 
			
		||||
  GMOCK_PP_COMMA_IF(_i)                                      \
 | 
			
		||||
  ::testing::A<GMOCK_INTERNAL_ARG_O(GMOCK_PP_INC(_i),        \
 | 
			
		||||
                                    GMOCK_PP_REMOVE_PARENS(_Signature))>()
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_ARG_O(_tn, _i, ...) GMOCK_ARG_(_tn, _i, __VA_ARGS__)
 | 
			
		||||
#define GMOCK_INTERNAL_ARG_O(_i, ...) GMOCK_ARG_(_i, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_MATCHER_O(_tn, _i, ...) \
 | 
			
		||||
  GMOCK_MATCHER_(_tn, _i, __VA_ARGS__)
 | 
			
		||||
#define GMOCK_INTERNAL_MATCHER_O(_i, ...) GMOCK_MATCHER_(_i, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_METHOD0(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 0, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD1(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 1, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD2(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 2, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD3(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 3, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD4(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 4, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD5(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 5, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD6(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 6, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD7(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 7, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD8(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 8, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD9(m, ...) GMOCK_INTERNAL_MOCK_METHODN(, , m, 9, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD10(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, , m, 10, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_CONST_METHOD0(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 0, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD1(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 1, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD2(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 2, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD3(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 3, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD4(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 4, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD5(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 5, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD6(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 6, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD7(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 7, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD8(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 8, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD9(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 9, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD10(m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, , m, 10, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_METHOD0_T(m, ...) MOCK_METHOD0(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD1_T(m, ...) MOCK_METHOD1(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD2_T(m, ...) MOCK_METHOD2(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD3_T(m, ...) MOCK_METHOD3(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD4_T(m, ...) MOCK_METHOD4(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD5_T(m, ...) MOCK_METHOD5(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD6_T(m, ...) MOCK_METHOD6(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD7_T(m, ...) MOCK_METHOD7(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD8_T(m, ...) MOCK_METHOD8(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD9_T(m, ...) MOCK_METHOD9(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD10_T(m, ...) MOCK_METHOD10(m, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_CONST_METHOD0_T(m, ...) MOCK_CONST_METHOD0(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD1_T(m, ...) MOCK_CONST_METHOD1(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD2_T(m, ...) MOCK_CONST_METHOD2(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD3_T(m, ...) MOCK_CONST_METHOD3(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD4_T(m, ...) MOCK_CONST_METHOD4(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD5_T(m, ...) MOCK_CONST_METHOD5(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD6_T(m, ...) MOCK_CONST_METHOD6(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD7_T(m, ...) MOCK_CONST_METHOD7(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD8_T(m, ...) MOCK_CONST_METHOD8(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD9_T(m, ...) MOCK_CONST_METHOD9(m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD10_T(m, ...) MOCK_CONST_METHOD10(m, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_METHOD0_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 0, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD1_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 1, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD2_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 2, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD3_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 3, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD4_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 4, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD5_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 5, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD6_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 6, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD7_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 7, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD8_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 8, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD9_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 9, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD10_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(, ct, m, 10, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_CONST_METHOD0_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 0, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD1_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 1, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD2_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 2, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD3_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 3, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD4_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 4, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD5_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 5, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD6_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 6, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD7_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 7, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD8_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 8, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD9_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 9, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD10_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  GMOCK_INTERNAL_MOCK_METHODN(const, ct, m, 10, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_METHOD0_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD0_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD1_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD1_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD2_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD2_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD3_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD3_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD4_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD4_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD5_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD5_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD6_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD6_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD7_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD7_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD8_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD8_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD9_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD9_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_METHOD10_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_METHOD10_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define MOCK_CONST_METHOD0_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD0_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD1_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD1_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD2_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD2_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD3_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD3_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD4_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD4_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD5_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD5_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD6_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD6_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD7_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD7_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD8_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD8_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD9_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD9_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
#define MOCK_CONST_METHOD10_T_WITH_CALLTYPE(ct, m, ...) \
 | 
			
		||||
  MOCK_CONST_METHOD10_WITH_CALLTYPE(ct, m, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#define GMOCK_INTERNAL_MOCK_METHODN(constness, ct, Method, args_num, ...) \
 | 
			
		||||
  GMOCK_METHOD##args_num##_(constness, ct, Method, __VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#endif  // THIRD_PARTY_GOOGLETEST_GOOGLEMOCK_INCLUDE_GMOCK_INTERNAL_GMOCK_FUNCTION_MOCKER_H_
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user