65 Commits

Author SHA1 Message Date
Abseil Team
4d7c867857 Googletest export
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
2019-04-01 15:05:10 -04:00
Abseil Team
9fece7d47b Googletest export
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
2019-01-23 13:27:08 -05:00
Abseil Team
d3bcc36a0b Googletest export
Add move-only argument support to almost all remaining matchers.

PiperOrigin-RevId: 229030728
2019-01-14 17:02:03 -05:00
misterg
b04ba50ca8 Googletest export
Replace testing::internal::ImplicitlyConvertible with std::is_convertible
Fixes #2054

PiperOrigin-RevId: 228334305
2019-01-08 11:51:05 -05:00
misterg
92feb4d617 Googletest export
Internal Change

PiperOrigin-RevId: 227575279
2019-01-02 16:51:40 -05:00
Abseil Team
cb1ea717e7 Googletest export
Remove the #ifs for old, unsupported and buggy compilers:
* old versions of GCC & MSVC
* Symbian

PiperOrigin-RevId: 227116941
2019-01-02 16:51:33 -05:00
Abseil Team
4645a8b271 Googletest export
Unifdef c++11-related macros from googletest now that it requires C++11.

PiperOrigin-RevId: 225905601
2018-12-20 14:09:31 -05:00
Abseil Team
592a6c675d Googletest export
Remove GTEST_REFERENCE_TO_CONST_ usage from GMock. In C++11, it's redundant.

PiperOrigin-RevId: 225719210
2018-12-17 13:53:39 -05:00
Abseil Team
a59a5353aa Googletest export
Allow container matchers to accept move-only containers.

PiperOrigin-RevId: 225667441
2018-12-17 13:53:33 -05:00
Abseil Team
97bce1c9cc Googletest export
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
2018-12-12 11:54:22 -05:00
misterg
7a01807a11 Googletest export
rollback of 224929783

PiperOrigin-RevId: 225008559
2018-12-11 11:36:30 -05:00
Abseil Team
e9a14888cf Googletest export
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
2018-12-11 10:11:01 -05:00
Abseil Team
0e515e0c3f Googletest export
Deduce SizeType for SizeIs() from the return value of the size() member function

PiperOrigin-RevId: 223835674
2018-12-04 09:45:03 -05:00
Abseil Team
adba5a751f Googletest export
Applied fixes for ClangTidy modernize-use-override and modernize-use-using.

PiperOrigin-RevId: 223800219
2018-12-03 12:54:11 -05:00
Abseil Team
9ddcb0b4dd Googletest export
Replace pump'd Args() matcher with variadic templates.

PiperOrigin-RevId: 223794430
2018-12-03 12:54:02 -05:00
durandal
0bd64b024a Googletest export
Accept gmock matchers in EXPECT_EXIT and friends to allow matches other than simple regex matches on death output.

PiperOrigin-RevId: 223035409
2018-11-28 23:10:17 -05:00
durandal
064abddc5f Googletest export
Move the Matcher<T> interface to googletest so I can use it to extend death test regex matching in a subsequent change.

PiperOrigin-RevId: 221675910
2018-11-20 13:29:20 -05:00
Gennadiy Civil
60941c0f3b Merge pull request #1959 from robinlinden:remove-msvc-workarounds
PiperOrigin-RevId: 221356626
2018-11-13 21:10:42 -05:00
Abseil Team
84059939ef Googletest export
Include type_traits header

ElementsAre, UnorderedElementsAre, AllOf, and AnyOf are all defined in terms of std::decay, which is in the type_traits header.

PiperOrigin-RevId: 220818637
2018-11-13 09:20:47 -05:00
Robin Lindén
1f17e0376a Remove workarounds for unsupported MSVC versions 2018-11-10 15:20:26 +01:00
misterg
7e9920053e Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 219129336
2018-10-29 13:46:16 -04:00
Abseil Team
63ad9ec911 Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 218618184
2018-10-26 14:19:59 -04:00
misterg
55c37984f7 Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 218571466
2018-10-26 14:19:51 -04:00
Abseil Team
b1f6f40f1a Googletest export
C++11 code cleanup.

PiperOrigin-RevId: 217364243
2018-10-18 11:32:16 -04:00
misterg
b208478537 Remove non-variadic pre C++11 AnyOf
PiperOrigin-RevId: 216411381
2018-10-09 16:30:37 -04:00
Abseil Team
dd4e36663c Unconditionally use std::tuple.
Remove all mention of TR1 tuple and our own implementation of tuple.

PiperOrigin-RevId: 216395043
2018-10-09 16:25:58 -04:00
misterg
0a82a5a5ab Remove testing::internal::BothOfMatcher, no longer needed
PiperOrigin-RevId: 216389313
2018-10-09 16:25:51 -04:00
misterg
a48e4d2375 Remove non-variadic pre C++11 AllOf
PiperOrigin-RevId: 216183352
2018-10-08 10:51:03 -04:00
Abseil Team
7a6bc673ea Apply clang-tidy modernize-use-nullptr to googletest.
Now that googletest has moved to C++11, it should no longer
use NULL or 0 for the null pointer. This patch converts all
such usages to nullptr using clang-tidy.

This prevents LLVM from issuing -Wzero-as-null-pointer-constant
warnings.

PiperOrigin-RevId: 215814400
2018-10-05 12:54:14 -04:00
misterg
d87ebc8397 Googletest export
Remove non-variadic pre C++11 ElementsAreMatcher and UnorderedElementsAreMatcher

PiperOrigin-RevId: 214266944
2018-09-25 13:05:17 -04:00
Abseil Team
ccce843d80 Googletest export
Treat default-constructed string_view same as constructed from "".
In the context of string comparison (e.g. HasSubstr, StartsWith, EndsWith,
etc.), a default-constructed string_view (nullptr) should be semantically same
as a empty string "".

PiperOrigin-RevId: 212816839
2018-09-14 11:13:48 -04:00
misterg
617e9f71a3 Googletest export
Fix broken OSS windows build.

PiperOrigin-RevId: 210969049
2018-08-30 21:33:10 -04:00
misterg
ea0db3df39 Googletest export
Internal Change

PiperOrigin-RevId: 210594341
2018-08-30 21:32:41 -04:00
Gennadiy Civil
25d7bd5af9 Update gmock-matchers.h 2018-08-29 22:32:08 -04:00
Abseil Team
b8dfc2efee No longer require a functor passed to ResultOf matcher to define result_of type.
This makes ResultOf more convenient to use. In particular, the matcher now accepts
lambdas.

PiperOrigin-RevId: 210118509
2018-08-27 12:22:26 -04:00
misterg
11b91b042a googletest export
- 209457654 Import of OSS PR, https://github.com/google/googletest/pu... by misterg <misterg@google.com>

PiperOrigin-RevId: 209457654
2018-08-20 14:50:48 -04:00
Gennadiy Civil
f0bcc9b875 Comments changes, no functionality changes. 2018-08-14 15:04:11 -04:00
Gennadiy Civil
bdc777e251 Comments changes, no functionality changes 2018-08-14 14:04:07 -04:00
Gennadiy Civil
821944fa56 Formatting changes for automatic code management 2018-07-27 11:15:08 -04:00
Gennadiy Civil
68683d415c code merge 2018-07-20 11:28:58 -04:00
Gennadiy Civil
21a1dae1b5 code sync 2018-07-19 12:42:39 -04:00
Scott Graham
7550a4c571 Fix gmock not building when -fno-rtti
Fixes issue #1554. This is internal cl/195020996.
2018-05-02 11:14:39 -07:00
Gennadiy Civil
edaeb8bc88 merging, 2018-04-25 13:10:41 -04:00
Gennadiy Civil
609802ef23 193353312 2018-04-18 10:36:12 -04:00
Gennadiy Civil
4308455071 http://cl/193060888 2018-04-17 16:12:04 -04:00
Gennadiy Civil
43341314bd test-meerging 2018-04-16 15:52:47 -04:00
Gennadiy Civil
41c224c80c Upstream cl/192179348 2018-04-11 15:24:04 -04:00
Gennadiy Civil
bd0ae14317 merging gmock matchers 1 2018-04-04 14:05:00 -04:00
Gennadiy Civil
7c7ab001c1 merging gmock-matchers.h 3 2018-03-26 10:36:26 -04:00
Gennadiy Civil
0eff246cb1 merging gmock-matchers.h 2 2018-03-26 10:16:59 -04:00