Alexander Grund
3d5ac2b94a
Remove support for BOOST_IDENTITY_TYPE
...
MOCK_PROTECT_FUNCTION_SIG should be used instead which even requires less parentheses.
Closes #109
2022-01-25 17:32:22 +01:00
Alexander Grund
dc9d98e5a5
Also move the error macros to the detail header
2022-01-24 19:14:51 +01:00
Alexander Grund
3fe72f66ea
Don't use MOCK_*_EXT in tests
...
This is not really part of the public interface anymore as the variadic functions are enough.
2022-01-24 19:11:08 +01:00
Alexander Grund
bd0a4cfc73
Reduce exposed interface (macros)
...
Move implementation details to mock_impl.hpp and remove MOCK_*_TPL macros.
Make sure all exposed macros (in mock.hpp) are properly documented.
Closes #105
2022-01-24 19:03:15 +01:00
Alexander Grund
ee72e8b9d8
Format code using Clang-Format 10 and enforce via CI
...
Makes the format of the code base uniform.
2022-01-24 16:30:59 +01:00
Alexander Grund
98541eb5a7
Change the threshold param of near to be inclusive
...
I.e. it means the maximum allowed difference, similar to how other testing frameworks handle this and it allows a threshold of 0 to mean "equal"
2022-01-07 17:08:17 +01:00
Alexander Grund
cf5ac87499
Remove support for auto_ptr
2022-01-07 17:08:16 +01:00
Alexander Grund
c7873cde4b
Adress review comments
2022-01-07 17:08:16 +01:00
Alexander Grund
279bb2c767
Fix memory include
2022-01-07 17:08:16 +01:00
Alexander Grund
476c1a7831
Remove some superflous typedefs and default impls
2022-01-07 17:08:15 +01:00
Alexander Grund
d9f9fce6fc
Make action classes non-relocatable
...
This fixes an issue with auto_ptr. As shown by missing coverage the
actual copy/move ctors are not required as C++11 emplace functions can
be used.
Furthermore some places using shared_ptr could be replaced by unique_ptr
leading to better performance.
2022-01-07 17:08:15 +01:00
Alexander Grund
f3d6564d2b
Use make_* functions instead of new
2022-01-07 17:08:15 +01:00
Alexander Grund
d9a10afc12
Include definition for void_t to avoid dependency on Boost 1.64+
2022-01-07 17:08:14 +01:00
Alexander Grund
823fd994ff
Remove some Boost.PP stuff
2022-01-07 17:08:14 +01:00
Alexander Grund
898a5a4524
Document and improve is_functor
2022-01-07 17:08:13 +01:00
Alexander Grund
9af9f0e2ea
Replace Boost.TypeInfo
2022-01-07 17:08:13 +01:00
Alexander Grund
6702d68940
Use range-based for-loops
2022-01-07 17:08:13 +01:00
Alexander Grund
5ef17d0e33
Include examples in CI tests
...
Also fix and update examples and documentation where required
This allows to make sure examples are actually runnable avoiding them to
become outdated
2022-01-07 17:08:13 +01:00
Alexander Grund
908ca385b9
Add docstrings to mock.hpp
2022-01-07 17:08:12 +01:00
Alexander Grund
52d21a86af
Get rid of BOOST_IDENTITY_TYPE
2022-01-07 17:08:12 +01:00
Alexander Grund
a426e02759
Replace Boost.Bind by std::bind and lambdas
2022-01-07 17:08:12 +01:00
Alexander Grund
35e43d58a6
Use std::reference_wrapper instead of boost
2022-01-07 17:08:12 +01:00
Alexander Grund
353849e9ad
Use default/delete for ctor/dtor
2022-01-07 17:08:11 +01:00
Alexander Grund
35fa6e63e6
Use std smart pointers in code
2022-01-07 17:08:11 +01:00
Alexander Grund
2f72d5639e
Assume existance of lambdas
2022-01-07 17:08:11 +01:00
Alexander Grund
9faab7749c
Assume existance of <functional>
2022-01-07 17:08:11 +01:00
Alexander Grund
f154a1a22a
Assume existance of smart pointers
2022-01-07 17:08:11 +01:00
Alexander Grund
3b3700fda6
Assume support for variadic macros
2022-01-07 17:08:11 +01:00
Alexander Grund
f678f4d91f
Assume nullptr existance
2022-01-07 17:08:10 +01:00
Alexander Grund
cf330e8c86
Remove usage of Boost.MPL and reduce Boost.FunctionTypes usage
...
They are known to be slow on compilation and C++11 offer better alternatives
2022-01-07 17:08:10 +01:00
Alexander Grund
df5b77af95
Replace Boost.TypeTraits by std equivalents
2022-01-07 17:08:10 +01:00
Alexander Grund
9e664b52ab
Replace Boost.Move by std equivalents
2022-01-07 17:08:10 +01:00
Michael Jones
6c3ec0d785
Fix deprecation warning about implicit copy constructor
2021-08-16 17:12:03 -05:00
Alexander Grund
675969eafd
Auto-deduce method sig in MOCK_METHOD_(NON)CONST
...
Fixes #93
2020-07-27 17:05:05 +02:00
Dirk Faust
45450aa643
Remove boost deprecations
...
Fixes:
boost/test/floating_point_comparison.hpp:14:124: note: #pragma message: This header is deprecated. Use This header is deprecated. Please use <boost/test/tools/floating_point_comparison.hpp> instead. instead.
boost/detail/sp_typeinfo.hpp:23:54: note: #pragma message: This header is deprecated. Use <boost/core/typeinfo.hpp> instead.
2020-05-26 17:11:33 +02:00
Alexander Grund
b5db116933
Use const-ref for instance string
2020-05-18 10:45:19 +02:00
Alexander Grund
233046d738
Fix another unused variable warning
2020-04-17 20:31:32 +02:00
Alexander Grund
3df0668314
Fix unknown preproccessor symbol warning
2020-04-14 10:44:36 +02:00
Alexander Grund
57c000f8eb
Avoid unused parameter warnings
2020-04-14 10:42:15 +02:00
Flamefire
c71fe6c912
Undef small and near if defined
...
Not only happens on MSVC but also on MinGW (and probably all windows builds)
2019-01-01 19:36:31 +01:00
Alexander Grund
45574d708b
Add comma to MOCK_VARIADIC_ELEM_N calls
...
Avoids warning "must specify at least one argument for '...' parameter of
variadic macro" on e.g. Clang
2018-12-11 16:39:36 +01:00
Alexander Grund
f0fb2a1d02
Use BOOST_PP_VARIADIC_ELEM
2018-12-11 13:35:13 +01:00
Flamefire
30d756d120
Fix unused variable warning in non-threadsafe builds
...
Make lock/scoped_lock (dummy) RAII classes which avoids warnings in clang
Make lock and wrapper moveable as they should
Make wrapper return itself as reference not copy
2018-11-29 08:43:49 +01:00
Alexander Grund
72e0daae5c
Implement and use simple singleton
...
Based on old boost::unit_test::singleton
2018-11-22 14:41:11 +01:00
Alexander Grund
f402c6161e
Fix C++98 compatibility
2018-11-22 10:12:00 +01:00
Jeppe Frandsen
016455ca40
Corrected catch.hpp
2018-05-27 13:50:33 +02:00
Mathieu Champlon
cd5f911f6d
Fixed parameter forwarding bug in mock functions
2018-04-08 17:48:14 +02:00
Mathieu Champlon
4455222a62
Removed support for directly mocking a protected member function
...
Taking a function pointer on a base member protected function is actually invalid.
This could work with a pointer on the derived class member function, that is &derived::method instead of &base::method however there is no way to pass the derived class from MOCK_BASE_CLASS to the mock::detail::base helper if template classes are to be supported.
Anyway the now documented workaround is simple enough and the same as for private member functions.
As a side note the changes from ed36823235 might not be needed any more…
2018-04-08 15:16:49 +02:00
Mathieu Champlon
caef00d2e3
Fixed move in actions for gcc
2018-04-08 15:16:49 +02:00
Mathieu Champlon
35b4f570ae
Fixed clang warning
2018-04-08 15:16:48 +02:00