Commit Graph

32 Commits

Author SHA1 Message Date
Abseil Team
569fba4d74 Googletest export
Make internal FunctionMocker class final

PiperOrigin-RevId: 230332778
2019-01-22 13:12:13 -05:00
Abseil Team
9518a57428 Googletest export
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
2019-01-18 14:06:03 -05:00
misterg
14c2fba734 Googletest export
Internal Change

PiperOrigin-RevId: 227575279
2019-01-02 16:51:40 -05:00
Abseil Team
f8b1c1af17 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
26743363be 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
de5be0eb28 Googletest export
Move FunctionMocker and MockFunction out of the pump file and implement with variadic templates.

PiperOrigin-RevId: 220640265
2018-11-08 14:49:12 -05:00
misterg
e857f9cdd9 Googletest export
Remove scoped_ptr replace with std::unique_ptr

PiperOrigin-RevId: 219291284
2018-10-30 21:20:43 -04:00
Gennadiy Civil
e9085769d4 Merge pull request #1941 from barkovv:master
PiperOrigin-RevId: 219134349
2018-10-29 13:46:24 -04:00
misterg
80b43d900b Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 219129336
2018-10-29 13:46:16 -04:00
Vadim Barkov
3feffddd1e Replaced all NULLs with nullptr in googlemock 2018-10-28 03:27:51 +03:00
Abseil Team
b57c703963 Googletest export
Remove linked_ptr and use std::shared_ptr instead

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

PiperOrigin-RevId: 218571466
2018-10-26 14:19:51 -04:00
Gennadiy Civil
20eaf6e3a9 Merge pull request #1911 from BrukerJWD:isnice
PiperOrigin-RevId: 218384341
2018-10-23 15:13:42 -04:00
Abseil Team
29b47e45cf Googletest export
C++11 code cleanup.

PiperOrigin-RevId: 217364243
2018-10-18 11:32:16 -04:00
BrukerJWD
8c82ba48e4
Merge branch 'master' into isnice 2018-10-16 08:37:56 +02:00
Jonathan Wendeborn
67a240a107
Added Mock::IsNaggy, IsNice, and IsStrict 2018-10-16 08:07:15 +02:00
Gennadiy Civil
a651a4d44e Merge pull request #1908 from rwoldberg:master
PiperOrigin-RevId: 216909845
2018-10-12 16:12:32 -04:00
Robert Woldberg
dec3b81a08 Change types to remove cast warnings. 2018-10-12 11:12:55 -06:00
Abseil Team
4bb49ed640 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
df428ec118 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
265efde9a5 Comments changes, no functionality changes. 2018-08-14 15:04:11 -04:00
Gennadiy Civil
a3c0dd0f4d Comments changes, no functionality changes 2018-08-14 14:04:07 -04:00
Gennadiy Civil
984cba30ed Formatting changes for automatic code management 2018-07-27 11:15:08 -04:00
duxiuxing
65a49a73f0 Fix warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss 2018-07-17 15:46:47 +08:00
David Sunderland
f437f8ca0d Clone of unsubmitted cr/176529515. Introduce parameterless expectations. 2018-04-18 19:28:56 -04:00
Victor Costan
1324e2d706 Remove multiple inheritance from "unintesting call" mock classes.
Internal CL 156157936, which was published in commit
fe402c2779, introduced undefined behavior
by casting a base class (internal::{Naggy,Nice,Strict}Base<MockClass>,
using the curiously recurring template pattern) pointer to a derived
class ({Naggy,Nice,Strict}Mock<MockClass>), in the base class'
constructor. At that point, the object isn't guaranteed to have taken on
the shape of the derived class, and casting is undefined behavior.

The undefined behavior was caught by Chrome's CFI build bot [1], and
prevents rolling googletest past that commit / CL.

This commit simplifies the {Naggy,Nice,Strict}Mock class hierarchy in
a way that removes the undefined behavior.

[1] https://www.chromium.org/developers/testing/control-flow-integrity
2018-04-12 00:48:30 -07:00
Gennadiy Civil
fe402c2779 Merging gMock, 2 2018-04-05 16:09:17 -04:00
Gennadiy Civil
fbb48a7708 Code merges 2018-01-26 11:57:58 -05:00
Jonathan Wakely
b70cf1a663 Use gender-neutral pronouns in comments and docs 2017-09-27 13:31:13 +01:00
Alyssa Wilk
6e1970e237 Adding a flag option to change the default mock type 2017-08-10 09:41:09 -04:00
Nico Weber
09fd5b3ebf Use std::string and ::string explicitly in gtest and gmock code.
This merges a Google-internal change (117235625).

Original CL description:
This CL was created manually in about an hour with sed, a Python script
to find all the places unqualified 'string' was mentioned, and some help
from Emacs to add the "std::" qualifications, plus a few manual tweaks.
2017-05-15 17:53:04 -04:00
Billy Donahue
affb09edf0 move googlemock files into googlemock/ subdir 2015-08-25 17:47:18 -04:00