Commit graph

56 commits

Author SHA1 Message Date
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
Mathieu Champlon
d3a5d3010c Fixed move-only type argument in actions
Because boost::function does not move the parameters it receives we need to use std::function instead.
2018-03-12 08:11:33 +01:00
Mathieu Champlon
15285a22ec Cleaned code 2018-01-15 05:23:15 +01:00
Mathieu Champlon
6daff2167c Added Catch integration 2017-05-29 09:12:03 +02:00
Mathieu Champlon
a22ca57253 Added MOCK_NO_AUTO_PTR to deactivate std::auto_ptr support 2017-03-20 11:43:18 +01:00
Mathieu Champlon
c847c85a77 Fixed mocking of a function returning a reference for gcc 4.1 2017-01-15 12:50:11 +01:00
Mathieu Champlon
779d695490 Fixed line length greater than 80 characters 2016-07-17 23:28:05 +02:00
Mathieu Champlon
94bedbd653 Removed round parenthesis in signature support for compilers without variadic macros
VS2015 has fixed the double parenthesis trick which was allowed in function signatures.
2016-07-16 13:46:17 +02:00
Mathieu Champlon
506e10f76a Added logging support for boost::optional 2016-02-08 11:25:17 +01:00
Mathieu Champlon
c35b76c8f0 Removed unneeded inline 2016-02-08 10:02:10 +01:00
Mathieu Champlon
ffcb366633 Fixed extra semicolon warning with BOOST_GLOBAL_FIXTURE prior to Boost 1.59 2016-02-07 18:34:23 +01:00
Mathieu Champlon
4f0431842f Documented how to manage static objects 2015-10-09 22:38:37 +02:00
Mathieu Champlon
86371b5695 Fixed multiply defined symbol definition for MOCK_FUNCTION included from several translation units 2015-09-08 09:22:50 +02:00
Mathieu Champlon
1ab35d8912 Fixed build errors with Boost 1.59 2015-09-08 06:41:39 +02:00
Mathieu Champlon
1a18870056 Removed unnecessary backslashes 2015-09-04 22:33:48 +02:00
Mathieu Champlon
6750b6cbd6 Changed macro parameter case to show that it expects an object and not a type 2015-08-09 10:25:56 +02:00
Mathieu Champlon
45dd0f025e Cleaned code 2015-05-23 22:22:23 +02:00