mimic++ v9.2.1
Loading...
Searching...
No Matches
InterfaceMocking.hpp
Go to the documentation of this file.
1// Copyright Dominic (DNKpp) Koepke 2024 - 2025.
2// Distributed under the Boost Software License, Version 1.0.
3// (See accompanying file LICENSE_1_0.txt or copy at
4// https://www.boost.org/LICENSE_1_0.txt)
5
6#ifndef MIMICPP_MACROS_INTERFACE_MOCKING_HPP
7#define MIMICPP_MACROS_INTERFACE_MOCKING_HPP
8
11
12namespace mimicpp
13{
26
33}
34
50#define MIMICPP_DETAIL_MAKE_METHOD_OVERRIDE(ignore, traits, target_name, fn_name, linkage, ret, call_convention, param_type_list, specs, param_list, forward_list, ...) \
51 [[deprecated("(MIMICPP_)MOCK_(OVERLOADED_)METHOD is deprecated, use (MIMICPP_)MAKE_(OVERLOADED_)MEMBER_MOCK instead.")]] \
52 MIMICPP_DETAIL_GENERATE_FACADE_FUNCTION( \
53 ignore, \
54 traits, \
55 target_name, \
56 fn_name, \
57 linkage, \
58 ret, \
59 call_convention, \
60 param_type_list, \
61 specs override, \
62 param_list, \
63 forward_list, \
64 VA_ARGS)
65
78#define MIMICPP_MOCK_OVERLOADED_METHOD(fn_name, ...) \
79 MIMICPP_DETAIL_GENERATE_FACADE( \
80 MIMICPP_DETAIL_MAKE_METHOD_OVERRIDE, \
81 ::mimicpp::facade::mock_as_member, \
82 fn_name##_, \
83 fn_name, \
84 , \
85 __VA_ARGS__)
86
100#define MIMICPP_MOCK_METHOD(fn_name, ret, param_type_list, ...) \
101 MIMICPP_MOCK_OVERLOADED_METHOD( \
102 fn_name, \
103 MIMICPP_ADD_OVERLOAD(ret, param_type_list __VA_OPT__(, ) __VA_ARGS__))
104
105#ifndef MIMICPP_CONFIG_ONLY_PREFIXED_MACROS
111 #define MOCK_METHOD MIMICPP_MOCK_METHOD
112
118 #define MOCK_OVERLOADED_METHOD MIMICPP_MOCK_OVERLOADED_METHOD
119
120#endif
121
122#endif
Definition Call.hpp:24