summaryrefslogtreecommitdiffstats
path: root/googlemock
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #2755 from Conan-Kudo:set-version-for-libsGennadiy Rozental2020-06-021-0/+2
|\ | | | | | | PiperOrigin-RevId: 314427570
| * Set the version for the librariesNeal Gompa2020-03-211-0/+2
| | | | | | | | | | | | | | | | | | When building packaged shared libraries for use, having the version set makes it so that the soname is set correctly for parallel installation. This change is derived from the one used for the Fedora gtest package. Signed-off-by: Neal Gompa <ngompa13@gmail.com>
* | Googletest exportAbseil Team2020-06-021-0/+5
| | | | | | | | | | | | Note that EXPECT_EQ(actual_value, expected_value) or EXPECT_THAT(actual_value, Eq(expected_value)) is preferred over EXPECT_THAT(actual_value, expected_value). PiperOrigin-RevId: 314350852
* | Googletest exportdmauro2020-05-283-15/+2
| | | | | | | | | | | | Rollback of warning on unused ACTION result change PiperOrigin-RevId: 313380971
* | Googletest exportAbseil Team2020-05-281-1/+1
| | | | | | | | | | | | Spell out namespace for absl::Notification. PiperOrigin-RevId: 312300192
* | Googletest exportdurandal2020-05-281-3/+5
| | | | | | | | | | | | Silence MSVC C4100 (unused formal parameter) to fix breakage from recently added testcase. This warning is silenced in many files throughout googletest, but was not needed here until this testcase was added. PiperOrigin-RevId: 312121200
* | Googletest exportAbseil Team2020-05-283-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | Mark ACTION_Pn()-generated functions as must-use-result. This catches when a client creates an action and discards it, thinking that the action has actually been applied to something. This will help people who make the mistake of defining, for example, both `void Use(Foo*)` and `ACTION(Use) { Use(arg); }` for later application to a Foo. With such an overload, a client may then write `Use();`, forgetting the param and being confused why nothing happens. This also catches when a client defines their own action in terms of an ACTION()-generated one, invokes the ACTION's builder, and then fails to invoke the resulting action, thinking it's operating on the outer action's parameters. PiperOrigin-RevId: 312108101
* | Googletest exportAbseil Team2020-05-282-3/+25
| | | | | | | | | | | | | | | | Fix the ACTION* macros to allow for more than 10 arguments in the action. Only the first 10 will be passed as individual arguments as `argN`, but the rest can be accessed from the `args` tuple. PiperOrigin-RevId: 311542098
* | Googletest exportAbseil Team2020-05-131-0/+9
| | | | | | | | | | | | Addresses https://github.com/google/googletest/pull/2784 PiperOrigin-RevId: 310902202
* | Googletest exportAbseil Team2020-05-071-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix `-Wgnu-zero-variadic-macro-arguments` in GMock Passing zero arguments to the variadic part of a macro is a GNU extension and triggers warnings when build projects using GMock with `-pedantic`. - Fix uses of `GMOCK_PP_INTERNAL_16TH` to always receive at least 17 arguments. (this was triggered when `GMOCK_PP_NARG` or `GMOCK_PP_HAS_COMMA` were used with an argument containing no commas). - Fix `GMOCK_PP_HEAD` to append a dummy unused argument so that `GMOCK_PP_INTERNAL_HEAD` always has two arguments. PiperOrigin-RevId: 310414611
* | Merge pull request #2830 from keshavgbpecdelhi:patch-1vslashg2020-05-051-16/+16
|\ \ | | | | | | | | | PiperOrigin-RevId: 309951872
| * | Removed a typo in README.md keshavgbpecdelhi2020-05-011-1/+1
| | | | | | | | | There is an unnecessary comma before 'and'
* | | Googletest exportAbseil Team2020-05-011-1/+1
| | | | | | | | | | | | | | | | | | Fix link to "high-perf dependency injection technique". PiperOrigin-RevId: 308893893
* | | Googletest exportAbseil Team2020-05-011-2/+2
| | | | | | | | | | | | | | | | | | internal change PiperOrigin-RevId: 308648034
* | | Merge pull request #2815 from Quuxplusone:simpleGennadiy Rozental2020-05-018-157/+7
|\ \ \ | | | | | | | | | | | | PiperOrigin-RevId: 308625388
| * | | Fix a -Wdeprecated warning.Arthur O'Dwyer2020-04-231-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gmock-spec-builders.h:503:3: error: definition of implicit copy constructor for 'Expectation' is deprecated because it has a user-declared destructor [-Werror,-Wdeprecated] ~Expectation(); ^
| * | | Remove all uses of GTEST_DISALLOW_{MOVE_,}ASSIGN_.Arthur O'Dwyer2020-04-238-154/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | None of these are strictly needed for correctness. A large number of them (maybe all of them?) trigger `-Wdeprecated` warnings on Clang trunk as soon as you try to use the implicitly defaulted (but deprecated) copy constructor of a class that has deleted its copy assignment operator. By declaring a deleted copy assignment operator, the old code also caused the move constructor and move assignment operator to be non-declared. This means that the old code never got move semantics -- "move-construction" would simply call the defaulted (but deprecated) copy constructor instead. With the new code, "move-construction" calls the defaulted move constructor, which I believe is what we want to happen. So this is a runtime performance optimization. Unfortunately we can't yet physically remove the definitions of these macros from gtest-port.h, because they are being used by other code internally at Google (according to zhangxy988). But no new uses should be added going forward.
| * | | VariadicMatcher needs a non-defaulted move constructor for compile-time ↵Arthur O'Dwyer2020-04-161-2/+3
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | performance. We are about to remove all uses of GTEST_DISALLOW_ASSIGN_ in favor of using the Rule of Zero everywhere. Unfortunately, if we use the Rule of Zero here, then when the compiler needs to figure out if VariadicMatcher is move-constructible, it will recurse down into `tuple<Args...>`, which on libstdc++ recurses too deeply. In file included from googlemock/test/gmock-matchers_test.cc:43: In file included from googlemock/include/gmock/gmock-matchers.h:258: In file included from /usr/include/c++/5.5.0/algorithm:60: In file included from /usr/include/c++/5.5.0/utility:70: In file included from /usr/include/c++/5.5.0/bits/stl_pair.h:59: In file included from /usr/include/c++/5.5.0/bits/move.h:57: /usr/bin/include/c++/5.5.0/type_traits:115:26: fatal error: recursive template instantiation exceeded maximum depth of 256 : public conditional<_B1::value, _B1, _B2>::type ^ The move constructor is the only problematic case, for some unknown reason. With GTEST_DISALLOW_ASSIGN_, the presence of a copy assignment operator causes the move constructor to be non-declared, thus non-defaulted, thus non-problematic. Without GTEST_DISALLOW_ASSIGN_, we have to do one of the following: - Default the copy constructor, so that the move constructor will be non-declared. - Define our own non-defaulted move constructor. ...except that doing the latter STILL did not work! Fortunately, the former (default the copy constructor, don't provide any move constructor) both works in practice and is semantically equivalent to the old code.
* | | Googletest exportAbseil Team2020-05-016-175/+104
| | | | | | | | | | | | | | | | | | Rewrite ReturnNew action without using pump. PiperOrigin-RevId: 308219616
* | | Googletest exportAbseil Team2020-05-011-1/+1
|/ / | | | | | | | | | | Fix comment that describes how to test against nullopt. PiperOrigin-RevId: 307448375
* | Googletest exportAbseil Team2020-04-161-2/+2
| | | | | | | | | | | | Fix link to "After clause". Sorry, reader, but this heading is in another document! PiperOrigin-RevId: 305947971
* | Merge pull request #2756 from Conan-Kudo:fix-pkgconfig-reqsMark Barolak2020-04-162-2/+2
|\ \ | | | | | | | | | PiperOrigin-RevId: 305747437
| * | Ensure that gtest/gmock pkgconfig requirements specify versionNeal Gompa2020-03-212-2/+2
| |/ | | | | | | | | | | | | | | | | Google Test and Google Mock require matching versions to work, so this requirement should be described in the pkgconfig files. This change is derived from the one used for the Fedora gtest package. Signed-off-by: Neal Gompa <ngompa13@gmail.com>
* | Googletest exportAbseil Team2020-03-311-1/+2
| | | | | | | | | | | | Do not use std::result_of as it was removed in C++20. PiperOrigin-RevId: 303783600
* | Merge pull request #2350 from adambadura:MockFunctionFromStdFunctionXiaoyi Zhang2020-03-242-38/+143
|\ \ | |/ |/| | | PiperOrigin-RevId: 302677275
| * Add support for std::function in MockFunction (#2277)Adam Badura2020-03-182-40/+113
| |
| * Add tests for MockFunction deduction (#2277)Adam Badura2020-03-181-0/+30
| | | | | | | | | | | | Add tests checking that ::testing::MockFunction template argument can be deduced in a function call context. This is a property raised in the review, however, not checked before by any tests.
* | Googletest exportAbseil Team2020-03-201-1/+1
|/ | | | | | Internal change PiperOrigin-RevId: 302048013
* Googletest exportdmauro2020-03-171-5/+3
| | | | | | | Use a polymorphic matcher instead of the GreaterThan<int> test matcher to fix the sign-comparison warning on MSVC. PiperOrigin-RevId: 301163657
* Googletest exportAbseil Team2020-03-171-2/+0
| | | | | | Internal change PiperOrigin-RevId: 299345492
* Googletest exportAbseil Team2020-03-171-1/+1
| | | | | | | | Remove public buganizer reference from googletest cookbook. It also seems that this bug is obsolete. PiperOrigin-RevId: 298598298
* Googletest exportAbseil Team2020-02-282-7/+15
| | | | | | | Relax the implementation of MatcherCast to allow conversion of `Matcher<T>` to `Matcher<const T&>`. They have the same match signature. PiperOrigin-RevId: 297115843
* Googletest exportAbseil Team2020-02-283-22/+65
| | | | | | | | Allow construction of an Action from a callable of zero args Action already allows construction from a callable with the same args as the mocked function, without needing to wrap the callable in Invoke. However, if you don't care about the arguments to the mocked function you need to either accept all of them or wrap your callable in InvokeWithoutArgs. This change makes both of those unnecessary, since it allows you to pass a no-args callable to Action directly. PiperOrigin-RevId: 296117034
* Googletest exportAbseil Team2020-02-112-114/+115
| | | | | | Add gmock Matcher<std::string_view> specialization. PiperOrigin-RevId: 294443240
* Googletest exportAbseil Team2020-02-113-1871/+1892
| | | | | | | | | | Fix gmock_gen to use MOCK_METHOD instead of old style macros. Fix several related bugs in argument parsing and return types. - handle commas more correctly in return types - handle commas correctly in arguments - handle default values more correctly PiperOrigin-RevId: 294435093
* Googletest exportAbseil Team2020-02-112-371/+406
| | | | | | Fix gmock_gen to use MOCK_METHOD instead of old style macros. PiperOrigin-RevId: 294360947
* Googletest exportAbseil Team2020-02-112-406/+371
| | | | | | Fix gmock_gen to use MOCK_METHOD instead of old style macros. PiperOrigin-RevId: 294332975
* Googletest exportAbseil Team2020-02-078-905/+152
| | | | | | | | Get rid of gmock-generated-matchers.h and gmock-generated-matchers.h.pump. Stop using pump for MATCHER* macroses generation. PiperOrigin-RevId: 293878808
* Googletest exportdurandal2020-02-071-1/+1
| | | | | | | | Tag the function generated by MATCHER with GTEST_ATTRIBUTE_UNUSED_ to fix CI builds of gmock-matchers_test.cc vs. -Wunused-function. See https://github.com/google/googletest/pull/2697 for breakage. PiperOrigin-RevId: 293669752
* Googletest exportAbseil Team2020-02-078-1550/+299
| | | | | | | | | Get rid of gmock-generated-function-mockers.h and gmock-generated-function-mockers.h.pump. Stop using pump for GMOCK_METHOD* macroses generation. PiperOrigin-RevId: 293454519
* Googletest exportAbseil Team2020-02-071-1/+1
| | | | | | ...text exposed to GitHub repo https://www.github.com/google/googletest PiperOrigin-RevId: 293438092
* Googletest exportAbseil Team2020-02-073-471/+421
| | | | | | | | 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
* Googletest exportAbseil Team2020-02-074-34/+68
| | | | | | Fix std::move to std::forward where appropriate to support reference types. PiperOrigin-RevId: 292923058
* Googletest exportAbseil Team2020-02-074-54/+48
| | | | | | | Fix use of reserved names. Minimize code duplication needed for explict-vs-nonexplicit constructor. PiperOrigin-RevId: 292555014
* Googletest exportAbseil Team2020-02-071-0/+3
| | | | | | Add includes for type_traits and utility to gmock-function-mocker.h: macros in the file require these headers. PiperOrigin-RevId: 291782497
* Googletest exportAbseil Team2020-02-073-441/+257
| | | | | | | | | | | Create implementation macroses for matchers to move variadic parameters to the end of parameters list. To save backward compatibility, old macroses will be still taking `description` parameter as the last one. But they will use INTERNAL macro that takes `description` as the second parameter. PiperOrigin-RevId: 291724469
* Googletest exportAbseil Team2020-02-073-208/+122
| | | | | | | | Move part of functionality of Matcher* class to the base one. Reduce copypaste. Make constructor and conversion operator of Matcher* class independent of pump. PiperOrigin-RevId: 291405510
* Googletest exportAbseil Team2020-02-071-1/+1
| | | | | | | | | Add missing explicit keyword for gmock_Impl constructor. When switching to using GMOCK_PP in ACTION* macroses `explicit` keyword was missed in gmock_Impl constructor causing ClangTidy warnings in ACTION_P macro. PiperOrigin-RevId: 291159975
* Googletest exportAbseil Team2020-01-211-1/+1
| | | | | | | | | Allow copying of the string in MatchAndExplain. Otherwise, conversions from std::string_view to std::string will fail as being explicit PiperOrigin-RevId: 290301103
* Merge pull request #2665 from ↵Xiaoyi Zhang2020-01-211-3/+5
|\ | | | | | | | | | | bysreg:fix_noshortcircuitfailure_detectsflakyshortcircuit_test PiperOrigin-RevId: 290256504
OpenPOWER on IntegriCloud