aboutsummaryrefslogtreecommitdiffstats
path: root/googlemock/test
Commit message (Collapse)AuthorAgeFilesLines
* Fix -Wunused-private-field issues with clangEnji Cooper2019-02-121-0/+2
| | | | | | | Provide dummy accessors for private values that are set in initializers, but not actually used. Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
* Googletest exportAbseil Team2019-02-121-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix matcher comparisons for std::reference_wrapper. The googletest docs indicate that std::reference_wrapper should be used to for objects that should not be copied by the matcher (in fact, the ByRef() function is basically the same as a call to std::cref). However, for many types (such as std::string), the overloaded operator== will not resolve correctly. Specifically, this is problematic if operator== depends on template argument deduction, where the same type is named on LHS and RHS. Because template argument deduction happens before any implict conversions for purposes of overload resolution, attempting to compare T with std::reference_wrapper<T> simply looks like a comparison of unlike types. For exapmle, std::reference_wrapper<std::string> is implicitly convertible to 'const std::string&', which would be able to choose an overload specialization of operator==. However, the implicit conversion can only happen after template argument deduction for operator==, so a specialization that would other be an applicable overload is never considered. Note also that this change only affects matchers. There are good reasons that matchers may need to transparently hold a std::reference_wrapper. Other comparisons (like EXPECT_EQ, et. al.) don't need to capture a reference: they don't need to defer evaluation (as in googlemock), and they don't need to avoid copies (as the call chain of matchers does). PiperOrigin-RevId: 232499175
* Googletest exportmisterg2019-02-041-4/+4
| | | | | | Mark legacy _TEST_CASE_ macros as deprecated PiperOrigin-RevId: 232303251
* Googletest exportAbseil Team2019-02-011-2/+2
| | | | | | Fix stack overflow in AnyOfArray tests. PiperOrigin-RevId: 231881125
* Googletest exportAbseil Team2019-01-231-0/+142
| | | | | | | | | | | 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
* Googletest exportAbseil Team2019-01-182-0/+35
| | | | | | | | | | Fix mocking method arguments with templated copy constructors. A previous change removed workarounds for old compilers from googletest and googlemock. Unfortunately, a bit of code that started as a workaround for Symbian's C++ compiler is still needed to avoid copy/move constructor ambiguity when mocking functions with certain argument types. The test case added by this CL is extracted from Chrome's codebase, and was discovered while attempting to roll googletest. PiperOrigin-RevId: 229801765
* Googletest exportAbseil Team2019-01-172-1/+3
| | | | | | | | | Refactor the `Invoke` and `InvokeWithoutArgs` actions: - Replace pump'd classes and functions with templates. - Make the polymorphic actions be polymorphic functors instead. - Fix Invoke(Callback*) to work with subclasses of the callbacks, instead of trying to diagnose that in gmock_doctor. PiperOrigin-RevId: 229604112
* Googletest exportAbseil Team2019-01-141-21/+86
| | | | | | Add move-only argument support to almost all remaining matchers. PiperOrigin-RevId: 229030728
* Googletest exportAbseil Team2019-01-142-68/+3
| | | | | | | Deduplicate testing::ReferenceWrapper with std::reference_wrapper. Minor cleanups in matchers_test. PiperOrigin-RevId: 229022872
* Googletest exportAbseil Team2019-01-083-131/+64
| | | | | | Drop generated file gmock-generated-internal-utils.h. PiperOrigin-RevId: 228232195
* Googletest exportmisterg2019-01-021-4/+0
| | | | | | Internal Change PiperOrigin-RevId: 227575279
* Googletest exportAbseil Team2019-01-025-81/+3
| | | | | | | | Remove the #ifs for old, unsupported and buggy compilers: * old versions of GCC & MSVC * Symbian PiperOrigin-RevId: 227116941
* Googletest exportAbseil Team2018-12-211-2/+1
| | | | | | | Get rid of code generation for NiceMock / StrictMock. They got small enough that it doesn't make sense to generate them. PiperOrigin-RevId: 226455689
* Googletest exportAbseil Team2018-12-207-90/+9
| | | | | | Unifdef c++11-related macros from googletest now that it requires C++11. PiperOrigin-RevId: 225905601
* Googletest exportmisterg2018-12-171-4/+0
| | | | | | Suppress C4503 for MCVS , again PiperOrigin-RevId: 225895719
* Googletest exportmisterg2018-12-171-0/+2
| | | | | | Suppress C4503 for MCVS PiperOrigin-RevId: 225871050
* Googletest exportAbseil Team2018-12-171-4/+103
| | | | | | Allow container matchers to accept move-only containers. PiperOrigin-RevId: 225667441
* Googletest exportmisterg2018-12-132-5/+5
| | | | | | Internal Change PiperOrigin-RevId: 225231727
* Googletest exportAbseil Team2018-12-121-5/+88
| | | | | | | | | | | | | | 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
* Googletest exportmisterg2018-12-111-84/+5
| | | | | | rollback of 224929783 PiperOrigin-RevId: 225008559
* Googletest exportAbseil Team2018-12-111-5/+84
| | | | | | | | | | | | | | 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
* Googletest exportAbseil Team2018-12-041-0/+11
| | | | | | Deduce SizeType for SizeIs() from the return value of the size() member function PiperOrigin-RevId: 223835674
* Googletest exportAbseil Team2018-12-036-35/+27
| | | | | | Applied fixes for ClangTidy modernize-use-override and modernize-use-using. PiperOrigin-RevId: 223800219
* Googletest exportAbseil Team2018-12-032-155/+149
| | | | | | Replace pump'd Args() matcher with variadic templates. PiperOrigin-RevId: 223794430
* Googletest exportmisterg2018-11-201-2/+2
| | | | | | Fix broken OSS build PiperOrigin-RevId: 222244158
* Googletest exportAbseil Team2018-11-201-5/+7
| | | | | | Remove unintended dependency. PiperOrigin-RevId: 222243874
* Googletest exportAbseil Team2018-11-201-2/+0
| | | | | | Remove redundant Base/Derived types. PiperOrigin-RevId: 222243634
* Googletest exportmisterg2018-11-202-5/+5
| | | | | | Internal Change PiperOrigin-RevId: 222123106
* Googletest exportAbseil Team2018-11-201-0/+204
| | | | | | Add stringization based tests for gmock-pp.h macros PiperOrigin-RevId: 221961835
* Googletest exportAbseil Team2018-11-202-0/+59
| | | | | | Validate spec modifiers. PiperOrigin-RevId: 221810235
* Googletest exportAbseil Team2018-11-202-162/+118
| | | | | | Upgrade WithArgs family of actions to C++11. PiperOrigin-RevId: 221671690
* Googletest exportAbseil Team2018-11-152-0/+732
| | | | | | One macro to rule them all. PiperOrigin-RevId: 221462515
* Merge pull request #1959 from robinlinden:remove-msvc-workaroundsGennadiy Civil2018-11-132-16/+2
|\ | | | | | | PiperOrigin-RevId: 221356626
| * Remove workarounds for unsupported MSVC versionsRobin Lindén2018-11-102-7/+4
|/
* Googletest exportkrzysio2018-11-071-25/+8
| | | | | | | | Improve Bazel build files. New target gtest_prod allows access to the FRIEND_TEST macro without depending on the entirety of GTest in production executables. Additionally, duplicate config_setting rules were removed and formatting was adjusted. PiperOrigin-RevId: 220279205
* Googletest exportmisterg2018-10-301-2/+0
| | | | | | Remove scoped_ptr replace with std::unique_ptr PiperOrigin-RevId: 219291284
* Merge pull request #1941 from barkovv:masterGennadiy Civil2018-10-293-9/+9
|\ | | | | | | PiperOrigin-RevId: 219134349
| * Replaced all NULLs with nullptr in googlemockVadim Barkov2018-10-283-7/+7
| |
* | Googletest exportmisterg2018-10-296-136/+20
|/ | | | | | Remove linked_ptr and use std::shared_ptr instead PiperOrigin-RevId: 219129336
* Googletest exportAbseil Team2018-10-266-20/+136
| | | | | | Remove linked_ptr and use std::shared_ptr instead PiperOrigin-RevId: 218618184
* Googletest exportmisterg2018-10-266-136/+20
| | | | | | Remove linked_ptr and use std::shared_ptr instead PiperOrigin-RevId: 218571466
* Merge pull request #1911 from BrukerJWD:isniceGennadiy Civil2018-10-231-0/+28
|\ | | | | | | PiperOrigin-RevId: 218384341
| * Removed last reference to internal::kDefaultJonathan Wendeborn2018-10-161-1/+0
| |
| * Merge branch 'master' into isniceBrukerJWD2018-10-1626-1339/+2875
| |\ | |/ |/|
| * Don't fully qualify enum memberJonathan Wendeborn2018-10-161-2/+1
| |
| * Added Mock::IsNaggy, IsNice, and IsStrictJonathan Wendeborn2018-10-161-0/+30
| |
* | Project import generated by Copybara.Abseil Team2018-10-111-0/+123
| | | | | | | | PiperOrigin-RevId: 216423319
* | Internal Changemisterg2018-10-111-123/+0
| | | | | | | | PiperOrigin-RevId: 216417182
* | Remove non-variadic pre C++11 AnyOfmisterg2018-10-091-26/+16
| | | | | | | | PiperOrigin-RevId: 216411381
* | Unconditionally use std::tuple.Abseil Team2018-10-097-415/+410
| | | | | | | | | | | | Remove all mention of TR1 tuple and our own implementation of tuple. PiperOrigin-RevId: 216395043