930 Commits

Author SHA1 Message Date
Enji Cooper
784a918f66 Fix -Wunused-private-field issues with clang
Provide dummy accessors for private values that are set in initializers,
but not actually used.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2019-02-12 16:40:01 -08:00
misterg
a4c9af804f Googletest export
Internal Change

PiperOrigin-RevId: 233614147
2019-02-12 13:20:40 -05:00
Gennadiy Civil
26512b795c Merge pull request #2101 from MaEtUgR:fix-cmake-cygwin
PiperOrigin-RevId: 233096223
2019-02-12 13:20:27 -05:00
Abseil Team
23ba19ccce Googletest export
Internal changes.

PiperOrigin-RevId: 232953166
2019-02-12 13:20:20 -05:00
Abseil Team
06fe4fc0b0 Googletest export
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
2019-02-12 13:20:14 -05:00
Abseil Team
464761ffb0 Googletest export
Internal change

PiperOrigin-RevId: 232362580
2019-02-12 13:20:05 -05:00
Knut Omang
c5c172c599 Set gtest version correctly for older cmake versions
Signed-off-by: Knut Omang <knut.omang@oracle.com>
2019-02-11 20:19:58 +01:00
Knut Omang
b95ce09975 Generate a libgtest.la to help libtool managing dependencies
When building and using googletest from an install tree
we want libtool to generate rpath in the dependent binaries
to allow them to be executed from a build without a need
for LD_LIBRARY_PATH or similar.

For libtool based project this happens automatically
as projects generates .la files and install them.
Provide such a file for gtest as well to allow it to
work smoothly with libtool based projects.

Signed-off-by: Knut Omang <knut.omang@oracle.com>
2019-02-11 20:17:34 +01:00
Jonathan Wakely
99d74cf9f8 Stop TestInfo::Run() calling a function through null pointer
If the object was never created then trying to call &Test::DeleteSelf_
will dereference a null pointer, with undefined behaviour.

Fixes #845
2019-02-11 20:15:30 +01:00
Keiichi Watanabe
f87f054960 Fix an invalid example of JSON report in advanced.md
This is just a mistake in the document. Google Test doesn't output
such an invalid JSON report.

Signed-off-by: Keiichi Watanabe <keiichiw@chromium.org>
2019-02-05 21:05:16 +09:00
misterg
88d9e949af Googletest export
Address -Wgnu-zero-variadic-macro-arguments
Originally in OSS PR #2063 https://github.com/google/googletest/pull/2063
Fix regression in INSTANTIATE_TEST_SUITE_P macro to accept function pointers properly.

PiperOrigin-RevId: 232316698
2019-02-04 14:19:58 -05:00
misterg
0ff4c74a41 Googletest export
Mark legacy _TEST_CASE_ macros as deprecated

PiperOrigin-RevId: 232303251
2019-02-04 14:19:50 -05:00
Abseil Team
3c5f5ccf61 Googletest export
Update example code in gtest.h to prefer override over virtual now
that it is widely available in C++11.

PiperOrigin-RevId: 232057792
2019-02-04 14:19:41 -05:00
Gennadiy Civil
fb14dae5ef Merge pull request #2098 from ciband:feat/finish_platformio_support
PiperOrigin-RevId: 232028696
2019-02-04 14:19:31 -05:00
Chris
2036304cf1 fix: Add Arduino to embedded platform list
Added Arduino to the embedded platform list to allow for a stubbed out version
of GetCurrentDir.
2019-01-31 21:56:34 -06:00
Billy SU
6c540f5a4e Fix README.md broken link
Fix the **include/gtest/internal/gtest-port.h** link in the `Tweaking Google Test` title
2019-01-31 08:23:15 +08:00
Gennadiy Civil
9ece74a3f5 Repeat #2090
Testing
2019-01-30 14:44:27 -05:00
Ashley Hedberg
658ce0249a Merge pull request #2063 from mathbunnyru:master
PiperOrigin-RevId: 231456275
2019-01-30 14:26:14 -05:00
Kelly Walker
1df0bda868 Update advanced.md casing in example
Updated the example that says not to use SetupTestSuite with a small 'u' to actually use a small 'u'
2019-01-30 09:01:58 -06:00
Gennadiy Civil
b911be4d84 Merge pull request #2063 from mathbunnyru:master
PiperOrigin-RevId: 231434457
2019-01-29 14:32:06 -05:00
Hugo Lindström
5a2dbef4f5 Avoid dynamic/static runtime linking (LNK4098) by properly replacing MD(d)->MT(d) in both C and CXX flags, resolves 2074 2019-01-28 21:07:41 +01:00
Adam Cozzette
b69cb84b9a Fixed "make dist"
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.
2019-01-24 14:51:40 -08:00
Gennadiy Civil
961e2e91d2 Merge pull request #2041 from ciband:chore/fix_library_json
PiperOrigin-RevId: 230554814
2019-01-23 13:27:16 -05:00
Ayaz Salikhov
2caf28e9c2 Fix INSTANTIATE_TEST_CASE_P with zero variadic arguments 2019-01-18 14:53:56 +03:00
misterg
c0d3d9bdf6 Googletest export
Change remaining samples to use new Test Suite API

PiperOrigin-RevId: 229231566
2019-01-14 17:02:11 -05:00
Abseil Team
d3bcc36a0b Googletest export
Add move-only argument support to almost all remaining matchers.

PiperOrigin-RevId: 229030728
2019-01-14 17:02:03 -05:00
Abseil Team
e09cb4a368 Googletest export
Deduplicate testing::ReferenceWrapper with std::reference_wrapper.
Minor cleanups in matchers_test.

PiperOrigin-RevId: 229022872
2019-01-14 17:01:56 -05:00
misterg
b22872e0c6 Googletest export
Change tests to use new Test Suite API

PiperOrigin-RevId: 228908894
2019-01-11 13:59:22 -05:00
Abseil Team
107087b81e Googletest export
Fix warning about deprecation of implicit operations such as copy constructors or assignment operators.

Specifically:

MatcherBase's default copy constructor, assignment operator, move operator, and move assignment operator are now declared explicitly rather than depending on the compiler implicit generation (which is disallowed/warned against due to MatcherBase's declaration of the destructor).

PiperOrigin-RevId: 228573333
2019-01-10 16:32:37 -05:00
gennadiycivil
bd3d66c5f4 Merge pull request #2051 from enptfb55:master
PiperOrigin-RevId: 228337465
2019-01-08 11:51:17 -05:00
misterg
b04ba50ca8 Googletest export
Replace testing::internal::ImplicitlyConvertible with std::is_convertible
Fixes #2054

PiperOrigin-RevId: 228334305
2019-01-08 11:51:05 -05:00
Chris
9536b82e87 fix: Add Arduino setup()/loop() functions back
Added setup()/loop() functions back to *_main.cc files to support compiling in CI.  Future features could enable this for the end user.
2019-01-07 12:37:34 -06:00
gennadiycivil
2c1a7a3d4f Merge pull request #2048 from ciband:chore/clang_tidy
PiperOrigin-RevId: 228173023
2019-01-07 12:09:34 -05:00
Abseil Team
4b698248e5 Googletest export
Fix GTEST_IS_NULL_LITERAL_ for types that have magic implicit conversions.

PiperOrigin-RevId: 227879345
2019-01-07 12:09:25 -05:00
Sal Amato
3c8d42f063 fixing build errors for unused parameter 2019-01-06 06:24:26 -05:00
Chris
a553f5d0cd clang-tidy: modernize-deprecated-headers 2019-01-05 11:21:56 -06:00
Chris
d0e06a89e7 misc: Reapply Arduino functions 2019-01-03 21:23:06 -06:00
Chris
f656a435f1 misc: Revert formatting changes. 2019-01-03 21:22:00 -06:00
Chris Johnson
8d9f5e665a Merge branch 'master' into chore/fix_library_json 2019-01-03 21:13:20 -06:00
Gennadiy Civil
a04e432539 Merge branch 'master' of https://github.com/google/googletest 2019-01-03 17:18:32 -05:00
Gennadiy Civil
03b6431044 Update docs, TestCase->TestSuite 2019-01-03 17:18:03 -05:00
misterg
0346c06158 Googletest export
Fixes #1261

PiperOrigin-RevId: 227740670
2019-01-03 16:40:27 -05:00
misterg
94b4464c9e Googletest export
TestCase->TestSuite refactoring

PiperOrigin-RevId: 227702164
2019-01-03 16:40:20 -05:00
Chris
53527583a8 fix: Remove Arduino entry points
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.
2019-01-03 12:12:19 -06:00
Gennadiy Civil
4d41005af2 Merge pull request #2026 from justin6case/example_makefile_improvements
Example/sample makefile improvements
2019-01-03 11:38:47 -05:00
Gennadiy Civil
c8670a646b Merge pull request #2037 from ciband:chore/fix_library_json
PiperOrigin-RevId: 227615222
2019-01-02 21:39:36 -05:00
misterg
92feb4d617 Googletest export
Internal Change

PiperOrigin-RevId: 227575279
2019-01-02 16:51:40 -05:00
Abseil Team
cb1ea717e7 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
Gennadiy Civil
58773fddc9 Remove outdated scripts 2019-01-02 16:03:50 -05:00
Syohei YOSHIDA
c57f579557 Update Xcode project file
Remove files which no longer exist.
2018-12-28 13:23:44 +09:00