Commit graph

72 commits

Author SHA1 Message Date
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
Mathieu Champlon
b8e8b6ffbf Fixed uncaught_exceptions usage with clang
For some reason clang seems so believe uncaught_exceptions does not belong to the std namespace:

no member named 'uncaught_exceptions' in namespace 'std'; did you mean
      simply 'uncaught_exceptions'?

I haven't found any indication confirming this, but let's just support both…
2018-04-08 15:16:48 +02:00
Mathieu Champlon
c42b708950 Fixed deprecation warning about std::uncaught_exception in c++17 for msvc 2018-03-25 09:46:40 +02:00
Mathieu Champlon
860e072439 Fixed perfect forwarding bug 2018-03-17 22:20:04 +01:00
Mathieu Champlon
bccd3ff303 Added support for move only types to constraints
Therefore mock::retrieve now supports std::unique_ptr.
2018-03-12 08:34:28 +01:00
Mathieu Champlon
5d11db0f52 Added support for dereferencing in mock::equal 2018-03-12 08:33:53 +01:00
Mathieu Champlon
a2d36e961a Fixed move-only type support in constraints 2018-03-12 08:11:33 +01:00