| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Relax the implementation of MatcherCast to allow conversion of `Matcher<T>` to
`Matcher<const T&>`. They have the same match signature.
PiperOrigin-RevId: 297115843
|
|
|
|
|
|
| |
Add gmock Matcher<std::string_view> specialization.
PiperOrigin-RevId: 294443240
|
|
|
|
|
|
|
|
| |
Get rid of gmock-generated-matchers.h and gmock-generated-matchers.h.pump.
Stop using pump for MATCHER* macroses generation.
PiperOrigin-RevId: 293878808
|
|
|
|
|
|
| |
Fix std::move to std::forward where appropriate to support reference types.
PiperOrigin-RevId: 292923058
|
|
|
|
|
|
|
| |
Fix use of reserved names.
Minimize code duplication needed for explict-vs-nonexplicit constructor.
PiperOrigin-RevId: 292555014
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
Allow copying of the string in MatchAndExplain.
Otherwise, conversions from std::string_view to std::string will fail as being
explicit
PiperOrigin-RevId: 290301103
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\
| |
| |
| |
| |
| | |
kuzkry:remove-workaround_msvc-unneeded-const-dropping
PiperOrigin-RevId: 283979494
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | | |
kuzkry:remove-workaround_Nokia-Sybian-SafeMatcherCastImpl
PiperOrigin-RevId: 282581402
|
| | | |
|
| |/ |
|
|/ |
|
|
|
|
|
|
| |
Tolerate std::string's explicit copy construction from std::string_view.
PiperOrigin-RevId: 277583394
|
|
|
|
|
|
|
|
| |
Avoid temporary matcher instances.
They are unnecessary and can be relatively more expensive than the rest of the
algorithm.
PiperOrigin-RevId: 277084853
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Rolling forward IsNan() matcher with fixes in test for -Wconversion issues. Use
std::nanf and std::nanl where appropriate.
PiperOrigin-RevId: 275523003
|
|
|
|
|
|
| |
Added IsNan matcher
PiperOrigin-RevId: 275473218
|
|
|
|
|
|
| |
Added IsNan matcher
PiperOrigin-RevId: 275278634
|
|\
| |
| |
| | |
PiperOrigin-RevId: 273585026
|
| |
| |
| |
| |
| | |
This fixes up ab8f346b (a manual merge) that has abandoned some things
from PR #2395.
|
|/
|
|
|
|
| |
Makes testing::ResultOf() work with non-copyable arguments.
PiperOrigin-RevId: 271222632
|
|
|
|
|
|
|
|
|
| |
Merge 3bdefdb473d304803d2a38e2a2cd5cdc1827c3bd into fb49e6c164490a227bbb7cf5223b846c836a0305
Closes #2407
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/googletest/pull/2407 from kuzkry:StaticAssertTypeEq 3bdefdb473d304803d2a38e2a2cd5cdc1827c3bd
PiperOrigin-RevId: 269255328
|
|\
| |
| |
| | |
PiperOrigin-RevId: 268693457
|
| |
| |
| |
| |
| | |
Due to confusion arisen from "iff" standing for "if and only if",
this commit uses the latter.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Merge 7f4f58da20e1066a888d3e4bcbef541db798a605 into 90a443f9c2437ca8a682a1ac625eba64e1d74a8a
Closes #2395
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/googletest/pull/2395 from kuzkry:custom-type-traits-remove_reference 7f4f58da20e1066a888d3e4bcbef541db798a605
PiperOrigin-RevId: 266189044
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Merge b8ca465e73ac0954a0c9eec2a84bdd8913d5763b into 90a443f9c2437ca8a682a1ac625eba64e1d74a8a
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
|
|\ \
| |/
|/|
| | |
PiperOrigin-RevId: 264652890
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Per the MSVC documentation the warning is new as of Visual Studio 2017,
version 15.8.
https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5046?view=vs-2019
GTest users building on MSVC 2015 or older versions of 2017 will, when
C4616 is enabled, see a warning like:
[...]gtest-matchers.h(53): error C2220: warning treated as error - no 'object' file generated
[...]gtest-matchers.h(53): warning C4619: #pragma warning: there is no warning number '5046'
Guard the mention of 5046 by an _MSC_VER check. VS2017 15.8 corresponds
to an _MSC_VER of 1915.
https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros?view=vs-2019
|
|
|
|
|
|
|
|
| |
Remove support for "global" ::string and ::wstring types.
This support existed for legacy codebases that existed from before namespaces
where a thing. It is no longer necessary.
PiperOrigin-RevId: 241335738
|
|
|
|
|
|
|
|
|
|
|
| |
Add AllOfArray matcher that verifies a value matches all member of some array/container/list/set/..., e.g:
EXPECT_THAT(1, AnyOfArray({1, 2, 3}))
In the simplest form this is identical to AnyOf(1, 2, 3). But unlike that one it works on containers.
Add AnyOfArray matcher that verifies a value matches any member of some
array/container/list/set/...
PiperOrigin-RevId: 230403653
|
|
|
|
|
|
| |
Add move-only argument support to almost all remaining matchers.
PiperOrigin-RevId: 229030728
|
|
|
|
|
|
|
| |
Replace testing::internal::ImplicitlyConvertible with std::is_convertible
Fixes #2054
PiperOrigin-RevId: 228334305
|
|
|
|
|
|
| |
Internal Change
PiperOrigin-RevId: 227575279
|
|
|
|
|
|
|
|
| |
Remove the #ifs for old, unsupported and buggy compilers:
* old versions of GCC & MSVC
* Symbian
PiperOrigin-RevId: 227116941
|
|
|
|
|
|
| |
Unifdef c++11-related macros from googletest now that it requires C++11.
PiperOrigin-RevId: 225905601
|
|
|
|
|
|
| |
Remove GTEST_REFERENCE_TO_CONST_ usage from GMock. In C++11, it's redundant.
PiperOrigin-RevId: 225719210
|
|
|
|
|
|
| |
Allow container matchers to accept move-only containers.
PiperOrigin-RevId: 225667441
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The gmock matchers have a concept of MatchAndExpain; where the details of the
matching are written to a "result listener". A matcher can avoid creating
expensive debug info by checking result_listener->IsInterested(); but,
unfortunately, the default matcher code (called from EXPECT_THAT) is always
"interested".
This change implements EXPECT_THAT matching to first run the matcher in a "not
interested" mode; and then run it a second time ("interested") only if the
match fails.
PiperOrigin-RevId: 225036073
|
|
|
|
|
|
| |
rollback of 224929783
PiperOrigin-RevId: 225008559
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The gmock matchers have a concept of MatchAndExpain; where the details of the
matching are written to a "result listener". A matcher can avoid creating
expensive debug info by checking result_listener->IsInterested(); but,
unfortunately, the default matcher code (called from EXPECT_THAT) is always
"interested".
This change implements EXPECT_THAT matching to first run the matcher in a "not
interested" mode; and then run it a second time ("interested") only if the
match fails.
PiperOrigin-RevId: 224929783
|
|
|
|
|
|
| |
Deduce SizeType for SizeIs() from the return value of the size() member function
PiperOrigin-RevId: 223835674
|
|
|
|
|
|
| |
Applied fixes for ClangTidy modernize-use-override and modernize-use-using.
PiperOrigin-RevId: 223800219
|
|
|
|
|
|
| |
Replace pump'd Args() matcher with variadic templates.
PiperOrigin-RevId: 223794430
|