| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use a tagged constructor for FlatTuple instead.
Some versions of MSVC are getting confused with that constructor and generating invalid code.
PiperOrigin-RevId: 342050957
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Rollback change from
https://github.com/google/googletest/pull/1836. This change generates
a script on Windows to actually run each test, but the script itself
doesn't correctly report if the test passed.
This change will "break tests" that were already broken on Windows,
but weren't being reported as such.
PiperOrigin-RevId: 341850671
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | | |
Add support for ref qualifiers in MOCK_METHOD.
PiperOrigin-RevId: 341047839
|
| | |
| | |
| | |
| | |
| | |
| | | |
Rewrite InvokeArgument action without using pump.
PiperOrigin-RevId: 340861582
|
|\ \ \
| | | |
| | | |
| | | | |
PiperOrigin-RevId: 340286884
|
| | | | |
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix some issues when running fuse_gmock_files.
The module path should be updated before importing `fuse_gtest_files`, since
the script may not run from the googletest repo root. We also need a non-frozen
set in order to track progress.
PiperOrigin-RevId: 337380466
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes build warnings from previous CL
Add CMake to internal presubmit to prevent these
PiperOrigin-RevId: 337325504
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
Aralox:Issue-2135-modify-mock-template-args-AX-to-TArgX
PiperOrigin-RevId: 337217118
|
| | | |
| | | |
| | | |
| | | | |
A1, A2, ... to TArg1, TArg2,... to avoid clash with legacy header files
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Add ::testing::FieldsAre matcher for objects that support get<> and structured bindings.
PiperOrigin-RevId: 337165285
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Removing a semicolon that triggers a lint error in sample code.
PiperOrigin-RevId: 337095451
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
PiperOrigin-RevId: 336881266
|
| |/ / / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Use absl::StrCat in MATCHER_P example for consistency with https://abseil.io/tips/3
PiperOrigin-RevId: 336878481
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Suggest using generic lambdas for composing macros.
Long chains of macros hurt legibility; generic lambdas are an easy way to abbreviate them, but are not an obvious solution to casual users.
Compare:
EXPECT_THAT(f(), ElementsAre(
Property(&MyClass::foo, Property(&OtherClass::bar, Contains("x"))),
Property(&MyClass::foo, Property(&OtherClass::bar, Contains("y"))));
to:
EXPECT_THAT(f(), ElementsAre(HasFooBar("x"), HasFooBar("y")));
PiperOrigin-RevId: 336870137
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
Make the code Python3 compliant.
PiperOrigin-RevId: 336144198
|
|\ \ \
| | | |
| | | |
| | | | |
PiperOrigin-RevId: 334384310
|
| | | |
| | | |
| | | |
| | | | |
Please note that changing the default value for a type can make [you]* test.....
Here "you" word doesn't make sense.. rather "your" seems to make it understandable.
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
Fix typo
PiperOrigin-RevId: 333745750
|
| | |
| | |
| | |
| | |
| | |
| | | |
Address OSS Issue #2463 https://github.com/google/googletest/issues/2463
PiperOrigin-RevId: 333289989
|
| | |
| | |
| | |
| | |
| | |
| | | |
Simplify FooConcrete static calls in googlemock cookbook.
PiperOrigin-RevId: 332437041
|
|/ /
| |
| |
| |
| |
| | |
Reduce the demangled name bloat of the Action constructor.
PiperOrigin-RevId: 332234887
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | |
| | | |
PiperOrigin-RevId: 330545489
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | |
| | | |
PiperOrigin-RevId: 327294137
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
nitpicks.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | | |
internal change
PiperOrigin-RevId: 326080000
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixing exception-safety bug in googletest. Previously, if an exception was
thrown during a call to a mock that would have triggered an error, the error
was discarded.
Fixes #2890
PiperOrigin-RevId: 325017806
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| | |
Internal documentation change.
PiperOrigin-RevId: 323612305
|
| |
| |
| |
| |
| |
| | |
Stop using ADL for InvokeArgument action.
PiperOrigin-RevId: 323234396
|
| |
| |
| |
| |
| |
| | |
Move matchers' tests from *generated* to common files.
PiperOrigin-RevId: 320954068
|