- 15 Oct, 2020 1 commit
-
-
dmauro authored
Fixes build warnings from previous CL Add CMake to internal presubmit to prevent these PiperOrigin-RevId: 337325504
-
- 14 Oct, 2020 1 commit
-
-
Abseil Team authored
Add ::testing::FieldsAre matcher for objects that support get<> and structured bindings. PiperOrigin-RevId: 337165285
-
- 03 Aug, 2020 7 commits
-
-
Vladimir Goncharov authored
-
Vladimir Goncharov authored
-
Vladimir Goncharov authored
-
Vladimir Goncharov authored
-
Vladimir Goncharov authored
-
Vladimir Goncharov authored
-
Vladimir Goncharov authored
This PR adds matchers that accept a callable and verify that when invoked, it throws an exception with the given type and properties. Fixes #952
-
- 10 Jun, 2020 1 commit
-
-
Abseil Team authored
Change string matchers, like HasSubstr, to accept `string_view` input if available. PiperOrigin-RevId: 315726484
-
- 01 May, 2020 1 commit
-
-
Abseil Team authored
Fix comment that describes how to test against nullopt. PiperOrigin-RevId: 307448375
-
- 24 Apr, 2020 1 commit
-
-
Arthur O'Dwyer authored
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.
-
- 16 Apr, 2020 1 commit
-
-
Arthur O'Dwyer authored
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.
-
- 28 Feb, 2020 1 commit
-
-
Abseil Team authored
Relax the implementation of MatcherCast to allow conversion of `Matcher<T>` to `Matcher<const T&>`. They have the same match signature. PiperOrigin-RevId: 297115843
-
- 11 Feb, 2020 1 commit
-
-
Abseil Team authored
Add gmock Matcher<std::string_view> specialization. PiperOrigin-RevId: 294443240
-
- 07 Feb, 2020 5 commits
-
-
Abseil Team authored
Get rid of gmock-generated-matchers.h and gmock-generated-matchers.h.pump. Stop using pump for MATCHER* macroses generation. PiperOrigin-RevId: 293878808
-
Abseil Team authored
Fix std::move to std::forward where appropriate to support reference types. PiperOrigin-RevId: 292923058
-
Abseil Team authored
Fix use of reserved names. Minimize code duplication needed for explict-vs-nonexplicit constructor. PiperOrigin-RevId: 292555014
-
Abseil Team authored
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
-
Abseil Team authored
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
-
- 21 Jan, 2020 1 commit
-
-
Abseil Team authored
Allow copying of the string in MatchAndExplain. Otherwise, conversions from std::string_view to std::string will fail as being explicit PiperOrigin-RevId: 290301103
-
- 02 Jan, 2020 1 commit
-
-
Abseil Team authored
Explicitly default copy constructor in BoundSecondMatcher Since C++11, implicit defaulting of copy constructors is deprecated for types with user-defined copy assignment operators, so we should explicitly default the copy constructor of BoundSecondMatcher. PiperOrigin-RevId: 287587847
-
- 22 Nov, 2019 3 commits
-
-
Krystian Kuzniarek authored
-
Krystian Kuzniarek authored
-
Krystian Kuzniarek authored
-
- 02 Nov, 2019 1 commit
-
-
Krystian Kuzniarek authored
-
- 31 Oct, 2019 1 commit
-
-
Abseil Team authored
Tolerate std::string's explicit copy construction from std::string_view. PiperOrigin-RevId: 277583394
-
- 29 Oct, 2019 1 commit
-
-
Abseil Team authored
Avoid temporary matcher instances. They are unnecessary and can be relatively more expensive than the rest of the algorithm. PiperOrigin-RevId: 277084853
-
- 22 Oct, 2019 2 commits
-
-
Abseil Team authored
Remove bool_constant in favor of std::integral_constant<bool, ...>; The one non-trivial use of bool_constant has been changed to have significantly fewer template specializations. PiperOrigin-RevId: 275842490
-
Abseil Team authored
Rolling forward IsNan() matcher with fixes in test for -Wconversion issues. Use std::nanf and std::nanl where appropriate. PiperOrigin-RevId: 275523003
-
- 18 Oct, 2019 1 commit
-
-
misterg authored
Added IsNan matcher PiperOrigin-RevId: 275473218
-
- 17 Oct, 2019 1 commit
-
-
Abseil Team authored
Added IsNan matcher PiperOrigin-RevId: 275278634
-
- 27 Sep, 2019 1 commit
-
-
Abseil Team authored
Makes testing::ResultOf() work with non-copyable arguments. PiperOrigin-RevId: 271222632
-
- 16 Sep, 2019 2 commits
-
-
Krystian Kuzniarek authored
This fixes up ab8f346b (a manual merge) that has abandoned some things from PR #2395.
-
kuzkry authored
Merge 3bdefdb473d304803d2a38e2a2cd5cdc1827c3bd into fb49e6c1 Closes #2407 COPYBARA_INTEGRATE_REVIEW=https://github.com/google/googletest/pull/2407 from kuzkry:StaticAssertTypeEq 3bdefdb473d304803d2a38e2a2cd5cdc1827c3bd PiperOrigin-RevId: 269255328
-
- 06 Sep, 2019 1 commit
-
-
kuzkry authored
Merge 7f4f58da20e1066a888d3e4bcbef541db798a605 into 90a443f9 Closes #2395 COPYBARA_INTEGRATE_REVIEW=https://github.com/google/googletest/pull/2395 from kuzkry:custom-type-traits-remove_reference 7f4f58da20e1066a888d3e4bcbef541db798a605 PiperOrigin-RevId: 266189044
-
- 26 Aug, 2019 1 commit
-
-
misterg authored
Add tuple version of Optional() matches. This allows Optional() to be used in Pointwise matchers. PiperOrigin-RevId: 265501882
-
- 24 Aug, 2019 1 commit
-
-
Krystian Kuzniarek authored
-
- 23 Aug, 2019 2 commits
-
-
Abseil Team authored
Add tuple version of Optional() matches. This allows Optional() to be used in Pointwise matchers. PiperOrigin-RevId: 265110864
-
kuzkry authored
Merge b8ca465e73ac0954a0c9eec2a84bdd8913d5763b into 90a443f9 Closes #2396 COPYBARA_INTEGRATE_REVIEW=https://github.com/google/googletest/pull/2396 from kuzkry:custom-type-traits-true/false_type-and-bool_constant b8ca465e73ac0954a0c9eec2a84bdd8913d5763b PiperOrigin-RevId: 265064856
-