| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cast some values as their unsigned equivalents or `size_t` to match the
parameter type used for the template object under test. Also, provide
UInt32 equivalent delegate methods for some callers (with
int-equivalents for backwards compatibility).
This closes #2146.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Per the MSVC documentation the warning is new as of Visual Studio 2017,
version 15.8.
https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5046?view=vs-2019
GTest users building on MSVC 2015 or older versions of 2017 will, when
C4616 is enabled, see a warning like:
[...]gtest-matchers.h(53): error C2220: warning treated as error - no 'object' file generated
[...]gtest-matchers.h(53): warning C4619: #pragma warning: there is no warning number '5046'
Guard the mention of 5046 by an _MSC_VER check. VS2017 15.8 corresponds
to an _MSC_VER of 1915.
https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros?view=vs-2019
|
|/ |
|
|\
| |
| |
| |
| |
| | |
ngie-eign:cmake-fix-gtest-binary-prefixing-when-gmock-enabled
PiperOrigin-RevId: 241376090
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Building all test binaries under their respective subtrees makes
building the project via cmake easier to grok without additional hacks.
In particular, when dealing with the conversion I proposed in
https://reviews.freebsd.org/D19430 (switching from autotools to cmake),
I ran into unexpected gtest prefixing under the googlemock directory, as
opposed to the googletest directory. Example:
Before: `googlemock/gtest/googletest-break-on-failure-unittest_`
After: `googletest/googletest-break-on-failure-unittest_`
The latter form is easier to translate to packaging manifests when
building googlemock is disabled, as well as enabled, as the path remains
consistent when the feature flag is disabled.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
|
|/
|
|
|
|
|
|
| |
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
|
|\
| |
| |
| | |
PiperOrigin-RevId: 239404016
|
| |
| |
| |
| |
| |
| | |
Remove mention of unused type ProtocolMessage.
PiperOrigin-RevId: 239242706
|
| |
| |
| |
| |
| |
| | |
Action helpers need to pass by const& so that they can work with unique_ptr.
PiperOrigin-RevId: 239062671
|
|/
|
| |
Added a missing newline
|
|\
| |
| |
| | |
PiperOrigin-RevId: 236716851
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Build gmock cleanly with clang -Wextra-semi and -Wextra-semi-stmt
Extends 56ef07a20308 to take -Wc++98-compat-extra-semi
(https://reviews.llvm.org/D43162) and -Wextra-semi-stmt
(https://reviews.llvm.org/D52695) into account.
For https://crbug.com/926235.
PiperOrigin-RevId: 236643095
|
|/
|
|
|
|
|
|
|
|
| |
Build gmock cleanly with clang -Wextra-semi
For https://crbug.com/926235.
From https://github.com/google/googletest/pull/2139.
Fixes https://github.com/google/googletest/issues/2138.
PiperOrigin-RevId: 235832527
|
|\
| |
| |
| | |
PiperOrigin-RevId: 234844287
|
| |
| |
| |
| |
| |
| | |
Comment out unused method parameters in their relevant definitions.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
`DescribeTo(..)` and `MatchAndExplain(..)` in `gmock-matchers_test` both
override virtual methods. Remove the `virtual` keyword and apply `override` to
them instead.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
|
|\ \
| | |
| | |
| | | |
PiperOrigin-RevId: 234840107
|
| |/
| |
| |
| |
| |
| |
| |
| | |
`DescribeTo(..)` and `MatchAndExplain(..)` in `gmock-matchers_test` both
override virtual methods. Remove the `virtual` keyword and apply `override` to
them instead.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
|
|/
|
|
|
|
| |
Internal Change
PiperOrigin-RevId: 234823465
|
|
|
|
|
|
|
| |
Provide dummy accessors for private values that are set in initializers,
but not actually used.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
|
|
|
|
|
|
| |
Internal Change
PiperOrigin-RevId: 233614147
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Internal change
PiperOrigin-RevId: 232362580
|
|
|
|
|
|
| |
Mark legacy _TEST_CASE_ macros as deprecated
PiperOrigin-RevId: 232303251
|
|
|
|
|
|
| |
Fix stack overflow in AnyOfArray tests.
PiperOrigin-RevId: 231881125
|
|
|
|
|
|
| |
I made a few updates to the Makefile.am files so that "make dist"
succeeds and produces a usable tarball. We need this for protobuf
because the protobuf tarballs include a bundled copy of googletest.
|
|\
| |
| |
| | |
PiperOrigin-RevId: 230554814
|
| |
| |
| |
| | |
Added setup()/loop() functions back to *_main.cc files to support compiling in CI. Future features could enable this for the end user.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Improved flexibility by removing the Arduino entry points in favor of manual calls to setup/loop that the user can call from their entry point. This is the more common use case for Arudino.
Also added the gtest/gmock_main files to the PlatformIO ignore list since we are not supporting that feature.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | | |
Make internal FunctionMocker class final
PiperOrigin-RevId: 230332778
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | | |
Add move-only argument support to almost all remaining matchers.
PiperOrigin-RevId: 229030728
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Deduplicate testing::ReferenceWrapper with std::reference_wrapper.
Minor cleanups in matchers_test.
PiperOrigin-RevId: 229022872
|
|\ \ \
| | |/
| |/|
| | | |
PiperOrigin-RevId: 228337465
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Replace testing::internal::ImplicitlyConvertible with std::is_convertible
Fixes #2054
PiperOrigin-RevId: 228334305
|
| | |
| | |
| | |
| | |
| | |
| | | |
Drop generated file gmock-generated-internal-utils.h.
PiperOrigin-RevId: 228232195
|
|\ \ \
| |/ /
|/| |
| | | |
PiperOrigin-RevId: 228173023
|
| | |
| | |
| | |
| | |
| | |
| | | |
TestCase->TestSuite refactoring
PiperOrigin-RevId: 227702164
|
|\ \ \
| | | |
| | | | |
Example/sample makefile improvements
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
and googletest.
Library files are now created and named like versions produced
by Cmake.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Internal Change
PiperOrigin-RevId: 227575279
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | | |
Remove the #ifs for old, unsupported and buggy compilers:
* old versions of GCC & MSVC
* Symbian
PiperOrigin-RevId: 227116941
|
|/ /
| |
| |
| |
| |
| |
| | |
Get rid of code generation for NiceMock / StrictMock.
They got small enough that it doesn't make sense to generate them.
PiperOrigin-RevId: 226455689
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use std::function to implement type erasure in Action, wrapping the legacy
ActionInterface if necessary.
This makes functors / std::function the primary way to implement Action; the
existing ActionInterface implementations are handled through ActionAdaptor.
The existing actions are not (yet) migrated though; they'll pay the cost of one
additional indirection - but that should be negligible.
PiperOrigin-RevId: 226126137
|
| |
| |
| |
| |
| |
| | |
Unifdef c++11-related macros from googletest now that it requires C++11.
PiperOrigin-RevId: 225905601
|
| |
| |
| |
| |
| |
| | |
Suppress C4503 for MCVS , again
PiperOrigin-RevId: 225895719
|