- 05 Feb, 2021 1 commit
-
-
Abseil Team authored
Remove uses of GTEST_HAS_TYPED_TEST_P and GTEST_HAS_TYPED_TEST. PiperOrigin-RevId: 353935996
-
- 26 Jan, 2021 4 commits
-
-
ofats authored
Remove scripts for code generating together with related files. PiperOrigin-RevId: 352805926
-
Abseil Team authored
Stop using pump for generating internal/custom/gmock-generated-actions.h PiperOrigin-RevId: 352660735
-
Abseil Team authored
Internal change PiperOrigin-RevId: 352607401
-
Abseil Team authored
Merge CONTRIBUTORS, delete LICENSEs in googletest/ and googlemock/ PiperOrigin-RevId: 352558822
-
- 14 Jan, 2021 1 commit
-
-
Abseil Team authored
Change Matcher<T> to allow binding an implementation by value directly: - Drop the requirement of MatcherInterface. Doing manual type erasure avoid extra layers in many cases. - Avoid the adaptor for `MatcherInterface<T>` and `MatcherInterface<const T&>` mismatch. - Use a small object optimization when possible. This makes things like `_` and `Eq(1)` really cheap and do not require memory allocations. - Migrate some matchers to the new model to speed them up and to test the new framework. More matchers to come in future changes. PiperOrigin-RevId: 350580998
-
- 22 Dec, 2020 1 commit
-
-
Abseil Team authored
Give each of Naggy/Nice/StrictMock a base class whose constructor runs before the mocked class's constructor, and a destructor that runs after the mocked class's destructor, so that any mock methods run in either the constructor or destructor use the same strictness as other calls. PiperOrigin-RevId: 348511612
-
- 12 Dec, 2020 1 commit
-
-
Abseil Team authored
Add static_asserts that verify that no class hierarchy contains more than one of {NiceMock, NaggyMock, StrictMock}. This sort of nesting has always been disallowed, but this CL adds a compile-time check to prevent it. PiperOrigin-RevId: 347037822
-
- 09 Dec, 2020 1 commit
-
-
Abseil Team authored
Introduce a new `Address` matcher to gmock. PiperOrigin-RevId: 346344591
-
- 07 Dec, 2020 1 commit
-
-
Abseil Team authored
Add a `Pointer` matcher as an analog to `Pointee`. Similar to `Pointee`, `Pointer` works with either raw or smart pointers and allows creating a matcher like Pointer(Eq(foo)) for smart pointers. PiperOrigin-RevId: 346164768
-
- 12 Nov, 2020 1 commit
-
-
Abseil Team authored
Use a tagged constructor for FlatTuple instead. Some versions of MSVC are getting confused with that constructor and generating invalid code. PiperOrigin-RevId: 342050957
-
- 09 Nov, 2020 2 commits
-
-
Abseil Team authored
Change ACTION{,_Pn,_TEMPLATE} macros to build functors rather than ActionInterface<> subclasses, thus changing the Action<> wrappers they create to use the modernized (non-const) argument tuple type, allowing these macros to mutate their arguments. Functor-based Action<>s deep-copy the implementing object, so have the functors use a shared_ptr to the non-trivial state of bound value parameters. No longer specialize that shared state to the particular action signature, encoding that information instead only in the instantiation of the implementation function. PiperOrigin-RevId: 341116208 -
Abseil Team authored
GMock: Make Truly explain when it fails I just wrote a test that had a matcher of the form Optional(AllOf( SomeMatcher, SomeOtherMatcher, Truly(SomePredicate))) The predicate failed, the other two matchers succeeded, and I got a hard-to-interpret message saying that the value in the optional "didn't match". Didn't match what? This change improves situations like that slightly by having Truly explain to its result listener when it fails. When there are multiple Trulys in an AllOf, there will be some ambiguity, but it will at least provide more information than right now. PiperOrigin-RevId: 341105141
-
- 06 Nov, 2020 1 commit
-
-
Abseil Team authored
Add support for ref qualifiers in MOCK_METHOD. PiperOrigin-RevId: 341047839
-
- 05 Nov, 2020 1 commit
-
-
ofats authored
Rewrite InvokeArgument action without using pump. PiperOrigin-RevId: 340861582
-
- 30 Oct, 2020 1 commit
-
-
Abseil Team authored
Remove obsolete comment about non-const references. They used to be banned by the C++ style guide, but positions shifted, and this comment is no longer up to date. There's another reference (heh) on lines 816-819 to how gmock is a "general framework", with the possible implication that support for non-const references was weird in some way and only there to be "general", but I left it alone because I don't really feel I understand what it's saying. PiperOrigin-RevId: 339323428
-
- 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
-
- 07 Oct, 2020 1 commit
-
-
Aralox authored
Issue 2135: Change template args in NiceMock, NaggyMock and StrictMock from A1, A2, ... to TArg1, TArg2,... to avoid clash with legacy header files
-
- 29 Sep, 2020 1 commit
-
-
Abseil Team authored
Fix typo PiperOrigin-RevId: 333745750
-
- 20 Sep, 2020 1 commit
-
-
Abseil Team authored
Reduce the demangled name bloat of the Action constructor. PiperOrigin-RevId: 332234887
-
- 10 Sep, 2020 1 commit
-
-
Abseil Team authored
Mark ACTION_Pn()-generated functions as must-use-result. This catches when a client creates an action and discards it, thinking that the action has actually been applied to something. This will help people who make the mistake of defining, for example, both `void Use(Foo*)` and `ACTION(Use) { Use(arg); }` for later application to a Foo. With such an overload, a client may then write `Use();`, forgetting the param and being confused why nothing happens. This also catches when a client defines their own action in terms of an ACTION()-generated one, invokes the ACTION's builder, and then fails to invoke the resulting action, thinking it's operating on the outer action's parameters. PiperOrigin-RevId: 330614454
-
- 27 Aug, 2020 1 commit
-
-
Abseil Team authored
Replace uses of ACTION_TEMPLATE and ACTION_P with manually written functors. The latter provide better error diagnostics. This fixes https://github.com/google/googletest/issues/2729. PiperOrigin-RevId: 328573022
-
- 24 Aug, 2020 2 commits
-
-
Abseil Team authored
Workaround static assert in early versions libc++ The error is "Attempted to construct a reference element in a tuple with an rvalue". We can fix this by putting everything into a non temporary tuple_args and implitly convert to the other tuple types. This avoids binding an rvalue reference to an lvalue reference inside the tuple. PiperOrigin-RevId: 327624990
-
Abseil Team authored
Fix DoAll to work with move-only sink arguments. This changes types of the first n - 1 actions so that they only get a readonly view of the arguments. The last action will accept move only objects. PiperOrigin-RevId: 327031893
-
- 07 Aug, 2020 2 commits
-
-
Abseil Team authored
Fix DoAll to work with move-only sink arguments. This changes types of the first n - 1 actions so that they only get a readonly view of the arguments. The last action will accept move only objects. PiperOrigin-RevId: 324619666
-
Abseil Team authored
Fix DoAll to work with move-only sink arguments. This changes types of the first n - 1 actions so that they only get a readonly view of the arguments. The last action will accept move only objects. PiperOrigin-RevId: 324600664
-
- 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
-
- 28 Jul, 2020 1 commit
-
-
ofats authored
Stop using ADL for InvokeArgument action. PiperOrigin-RevId: 323234396
-
- 05 Jul, 2020 1 commit
-
-
Abseil Team authored
Improve compatibility with strict compilers targeting Windows Remove an unnecessary ##, which could result in warnings about invalid preprocessor tokens when pasting to an initial '(' PiperOrigin-RevId: 319277617
-
- 10 Jun, 2020 1 commit
-
-
Abseil Team authored
Change string matchers, like HasSubstr, to accept `string_view` input if available. PiperOrigin-RevId: 315726484
-
- 28 May, 2020 3 commits
-
-
dmauro authored
Rollback of warning on unused ACTION result change PiperOrigin-RevId: 313380971
-
Abseil Team authored
Mark ACTION_Pn()-generated functions as must-use-result. This catches when a client creates an action and discards it, thinking that the action has actually been applied to something. This will help people who make the mistake of defining, for example, both `void Use(Foo*)` and `ACTION(Use) { Use(arg); }` for later application to a Foo. With such an overload, a client may then write `Use();`, forgetting the param and being confused why nothing happens. This also catches when a client defines their own action in terms of an ACTION()-generated one, invokes the ACTION's builder, and then fails to invoke the resulting action, thinking it's operating on the outer action's parameters. PiperOrigin-RevId: 312108101 -
Abseil Team authored
Fix the ACTION* macros to allow for more than 10 arguments in the action. Only the first 10 will be passed as individual arguments as `argN`, but the rest can be accessed from the `args` tuple. PiperOrigin-RevId: 311542098
-