Commit Graph

330 Commits

Author SHA1 Message Date
David Benjamin
90244a6aef Fix testing::Combine on MSVC 2017.
On platforms with std::tuple and not std::tr1::tuple, GTEST_HAS_COMBINE
gets turned off when it works fine (due to GTEST_TUPLE_NAMESPACE_).
Elsewhere in the project, several GTEST_HAS_TR1_TUPLE checks
additionally check GTEST_HAS_STD_TUPLE_, so use that formulation.

(The ones that don't are specific to std::tr1::tuple and are followed by
an identical GTEST_HAS_STD_TUPLE_ version underneath it.)

In particular, this fixes testing::Combine on MSVC 2017, which regressed
here:
https://github.com/google/googletest/pull/1348#issuecomment-353879010
2018-01-02 12:57:49 -05:00
Gennadiy Civil
fa6730103e
Merge branch 'master' into uintptr 2018-01-02 10:54:26 -05:00
David Benjamin
bcd35523cd Avoid warning C4619 in MSVC 2017.
C4800 has since been removed in MSVC 2017, so trying to silence it
throws warning C4619 when enabled.
2017-12-25 11:02:02 -05:00
Gennadiy Civil
e76c3f837c
Merge branch 'master' into fix-issue-776-support-autoconf-as-submodule 2017-12-22 14:47:25 -05:00
Gregory Pakosz
7990f56637 Re-enable MSVC++ C4389 warning in CmdHelperEq()
C4389 was inhibited in commit 4b83461 making behavior inconsistent with
other compilers.
2017-12-21 16:35:38 +01:00
bryanzim
e17907da80
Update internal_utils.cmake 2017-12-20 10:06:20 -05:00
bryanzim
773cc78765
Merge branch 'master' into master 2017-12-20 08:21:22 -05:00
Gennadiy Civil
b5b6a07d14
Merge branch 'master' into fix-issue-776-support-autoconf-as-submodule 2017-12-19 13:43:22 -05:00
Gennadiy Civil
a7fceb4a98
Update gtest-param-test.h.pump 2017-12-19 10:58:37 -05:00
Gennadiy Civil
8a48f0ed4e
Update gtest-param-test.h.pump 2017-12-19 10:55:49 -05:00
Gennadiy Civil
058b318bc7
Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-12-18 12:02:12 -05:00
bryanzim
8cbda54f48
Merge branch 'master' into master 2017-12-15 16:52:50 -05:00
Gennadiy Civil
f6c44fe318
Merge branch 'master' into fix-issue-776-support-autoconf-as-submodule 2017-12-15 15:49:46 -05:00
Carlos O'Ryan
f34cbefe50
Merge branch 'fix-top-level-license' of github.com:coryan/googletest into fix-top-level-license 2017-12-11 19:34:19 -05:00
Carlos O'Ryan
23a014ab57
Refactor docs about contributions to CONTRIBUTING.md.
Per the review comments.
2017-12-11 19:33:27 -05:00
Bryan Zimmerman
3ea06317cd remove implicit casts 2017-12-11 12:19:56 -05:00
bryanzim
f98c20baa8
Merge branch 'master' into master 2017-12-11 09:37:55 -05:00
Gennadiy Civil
55fca1937d
Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-12-09 09:41:02 -05:00
Gennadiy Civil
10ef1d9a1e
Merge branch 'master' into use-system-includes 2017-12-08 15:11:13 -05:00
Gennadiy Civil
a30e15b144
Merge branch 'master' into fix-issue-776-support-autoconf-as-submodule 2017-12-08 11:56:41 -05:00
bryanzim
4aae1600d0
Merge branch 'master' into master 2017-12-08 11:31:31 -05:00
Wojciech Mamrak
57bb0bbbf8
Remove C4996 warning in VS2017 2017-12-07 18:20:25 +01:00
Wojciech Mamrak
8d9d6bb0a3
Improved description of VS std::tuple support 2017-12-07 18:17:43 +01:00
bryanzim
11d21b7c2a
Merge branch 'master' into master 2017-12-06 11:09:00 -05:00
Carlos O'Ryan
aea8580ecf
Run autoconf from top-level directory.
This is part (hopefully all) of the fixes for #776.  The top-level
configure.ac configures googletest first and then googlemock.
With this changes it is possible to embed googletest into another
project that uses autoconf.  For an example (though it is WIP), see
the commits (and soon PR) referenced from google/protobuf#236.
2017-12-03 14:07:35 -05:00
Gennadiy Civil
9e236748fb
Merge branch 'master' into master 2017-12-01 16:41:53 -05:00
Gennadiy Civil
c5cba7d17a
Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-12-01 16:31:29 -05:00
Gennadiy Civil
ce919c3ddf
Merge branch 'master' into use-system-includes 2017-12-01 16:29:28 -05:00
Sam Lunt
f46bd00e36 make includes system 2017-11-27 17:31:07 -06:00
Bryan Zimmerman
a7269e24ac replaced back accidently removed static_cast with consistent ImplicitCast_ 2017-11-22 09:41:32 -05:00
Gennadiy Civil
49eb76df47
Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-11-07 10:32:23 -08:00
whame
82447f23be Fixes issue #826 by treating MinGW as "non-Windows" when determining colored output 2017-11-07 15:22:50 +01:00
bryanzim
530885cbd5
Merge branch 'master' into master 2017-10-30 16:58:25 -04:00
Herbert Thielen
8866af0386 remove markdown stars (bold) from code examples 2017-10-29 17:12:00 +01:00
Bryan Zimmerman
1ae4096b9c fix for VS2017 deprecation of ::tr1::tuple
change static_cast to ImplicitCast_ for consitency
fixes for building with path names containing spaces
2017-10-27 14:01:16 -04:00
m-gupta
060783b7d2 Merge branch 'master' into gtestapifix 2017-10-25 10:24:56 -07:00
Arkadiy Shapkin
2641b021fc Fix tests with VS2015 and VS2017 2017-10-25 16:04:01 +03:00
Arkadiy Shapkin
77380cddf7 Enable C++11 features for VS2015 and VS2017 2017-10-25 03:24:49 +03:00
Manoj Gupta
1beff241c3 googletest: Add GTEST_API_ attribute to ThreadLocal class.
ThreadLocal class needs to be have default visibility.
Root cause is gtest uses typeinfo for the ThreadLocal class.
The problem manifests When gtest/gmock are built as a shared library
with libc++. When a class is used in typeinfo, it must have default
visibility.

There is an explanation about typeinfo and visibility here:
https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/CppRuntimeEnv/Articles/SymbolVisibility.html

When libc++ is used with gtest in shared library mode, any tests
that are compiled with -fvisibility=hidden and exercise the
macro EXPECT_CALL, it results in an abort like:
[ FATAL ] /usr/include/gtest/internal/gtest-port.h:1394::
Condition typeid(*base) == typeid(Derived) failed.
This is because the typeinfo for ThreadLocal class is not visible.
Therefore, linker failed to match it to the shared library symbol, creating a
new symbol instead.

This fixes https://github.com/google/googletest/issues/1207.
2017-10-20 14:41:06 -07:00
Gennadiy Civil
c208d8df23 Merge branch 'master' into master 2017-10-20 17:25:41 -04:00
Joe Alam
4597ec587c Updated README with information about C runtime dynamic/static linking issues in Windows 2017-10-07 23:34:53 +01:00
Herbert Thielen
ceee80c383 Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-10-04 21:03:47 +02:00
Jonathan Wakely
b70cf1a663 Use gender-neutral pronouns in comments and docs 2017-09-27 13:31:13 +01:00
Herbert Thielen
98024ad202 Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-09-24 10:01:52 +02:00
Gennadiy Civil
89f45180e0 Merge branch 'master' into master 2017-09-23 16:51:27 -04:00
Gennadiy Civil
d30a37e743 Revert "Allow macros inside of parametrized test names." 2017-09-21 10:54:14 -04:00
Gennadiy Civil
ff6796877f Merge pull request #1245 from sheepmaster/2017_09_04_parametrized
Allow macros inside of parametrized test names.
2017-09-21 10:52:47 -04:00
stkhapugin@chromium.org
cf512a099c Swap reinterpret_cast for static_cast
Swap reinterpret_cast for static_cast
2017-09-19 12:44:52 +02:00
Benjamin Kircher
d4af64ca13 Remove redundant declaration
TempDir() function is declared twice, once in `internal/gtest-port.h`
and a second time in `gtest.h`.

Fixes a warning with GCC when -Wredundant-decls is given.
2017-09-16 11:51:36 +02:00
ly2048
9681b4c8e6 Add explicit CMAKE_DEBUG_POSTFIX option
Enable generating different library name to be compatible with CMake's `FindGTest`.
2017-09-14 13:22:04 +08:00
Alexey Sokolov
c9cf07a8ba Make the failure messages from EXPECT_EQ and friends actually symmetric,
instead of reading more like reversing the former "expected" and "actual"
roles of the LHS and RHS arguments.

This patch is manually applied from internal version (125109873)
2017-09-13 18:18:20 +01:00
Gennadiy Civil
6133038886 Merge pull request #1227 from aninf-wo/hethi/unused-import
remove unused TestCase import
2017-09-12 08:44:58 -04:00
Gennadiy Civil
ecc5182dbd Merge pull request #1250 from aninf-wo/hethi/remove-linker-warning-on-non-existing-path
remove obsolete link_directories command
2017-09-11 12:15:11 -04:00
Gennadiy Civil
eb695b0f11 Merge branch 'master' into hethi/unused-import 2017-09-11 11:02:44 -04:00
Gennadiy Civil
3663d67170 Merge pull request #1203 from eidosmontreal/user_logger_instead_of_printf
User logger GTEST_LOG instead of printf in gtest.cc to log errors
2017-09-11 10:53:09 -04:00
Herbert Thielen
803ab9a860 Merge branch 'master' into hethi/remove-linker-warning-on-non-existing-path 2017-09-08 11:47:45 +02:00
Herbert Thielen
c86fbd766b Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS 2017-09-08 11:47:14 +02:00
Stepan Khapugin
6508a66622 Merge branch 'master' into master 2017-09-08 11:46:31 +02:00
Herbert Thielen
1b5b246ff9 Merge branch 'master' into hethi/unused-import 2017-09-08 11:45:58 +02:00
Herbert Thielen
6c0146fd00 use GTEST_ATTRIBUTE_UNUSED_ instead of dummy function 2017-09-07 17:33:19 +02:00
Stepan Khapugin
e43a5948d5 Merge branch 'master' into master 2017-09-07 15:44:18 +02:00
Gasprd Petit
900cc4bca5 Merge commit 'a33b6b091999d44f771761be03beb64d3af2350a' into user_logger_instead_of_printf 2017-09-07 07:49:00 -04:00
Gasprd Petit
f6dde80e94 Removed flush scopes around GTEST_LOG(FATAL) and exit call since FATAL is expected to abort() 2017-09-07 07:47:09 -04:00
Herbert Thielen
bc60b5a827 Merge branch 'master' into hethi/travis-release-build 2017-09-07 11:05:28 +02:00
Bernhard Bauer
a92c362cfb Merge branch 'master' into 2017_09_04_parametrized 2017-09-06 11:25:46 +01:00
Gennadiy Civil
857ddeadeb Merge pull request #975 from LebedevRI/respect-option
CMake: use threads if allowed and found, not just if found.
2017-09-05 13:07:37 -04:00
Stepan Khapugin
9a8794faed add a cast 2017-09-05 14:10:53 +02:00
Herbert Thielen
e8c6942ac1 remove obsolete link_directories command
It's not necessary, as the target_link_libraries command contains an
absolute path already, and the path given doesn't exist anymore,
leading only to linker warnings like:
ld: warning: directory not found for option
'-L/Users/travis/build/google/googletest/build/googlemock/gtest/src'
2017-09-05 12:01:14 +02:00
Herbert Thielen
88b76525dd Merge branch 'master' into hethi/unused-import 2017-09-05 11:32:13 +02:00
Herbert Thielen
aa0b5458a1 remove GTEST_HAS_PARAM_TESTS
As mentioned in issue #360:
"Now that all the platforms gtest supports work with value-parameterized
tests, we should remove the uses of the GTEST_HAS_PARAM_TESTS macro from
the codebase everywhere."
https://github.com/google/googletest/issues/360
2017-09-04 19:38:35 +02:00
Herbert Thielen
55fd999adf avoid warning about unused variable 2017-09-04 17:23:41 +02:00
Herbert Thielen
8abacca52e avoid -Wshadow warning on GCC
When using INSTANTIATE_TEST_CASE_P with a lambda function which uses
'info' as parameter name, GCC complains that this would shadow
parameter 'info' used in the macro's VA_ARGS call.
2017-09-04 17:18:16 +02:00
Bernhard Bauer
86e5f0083e Add a non-parametrized test. 2017-09-04 15:46:31 +01:00
Bernhard Bauer
e7c9e80e63 Allow macros inside of parametrized test names.
This allows doing things like TEST_P(TestFixture, MAYBE(TestName)) for nicer conditional test disabling.
2017-09-04 15:46:31 +01:00
Herbert Thielen
520ad96b78 treat all warnings as errors for GCC (-Werror) 2017-09-01 21:55:26 +02:00
Roman Lebedev
1a62d1b088
CMake: use threads if allowed and found, not just if found.
If the user's cmakelists.txt first look for threads using
find_package(Threads), then set(gtest_disable_pthreads ON),
and then include googletest. GoogleTest will not look for
threads. But since they have already been found before in
user's cmakelists, it will use them regardless.

This helped me fix build issue in darktable-org/rawspeed
on windows/MSYS2, even though there are threads, and they
are usable, googletest build was failing with issues
about AutoHandle. I was first looking for threads, and only
then including googletest, so no matter the value of
gtest_disable_pthreads, it failed.

The other obvious solution is for user to first include
googletest, and only then look for threads by himself.
2017-09-01 21:02:59 +03:00
Gennadiy Civil
52b6ca3428 Merge pull request #783 from tobbi/cppcheck_perf_fixes
Performance fixes reported by cppcheck
2017-09-01 13:52:33 -04:00
Gennadiy Civil
e4f6c0b358 Merge pull request #1011 from zeitounator/wrong-version-reported
Wrong version reported (1.7.0 should be 1.8.0)
2017-09-01 13:38:26 -04:00
Gennadiy Civil
b3a1f87f0c Merge pull request #1235 from aninf-wo/hethi/issue-1175-cmake-build-type
use cmake build type defined in .travis.yml for travis builds
2017-09-01 10:07:43 -04:00
Gennadiy Civil
ee53b281ba Merge branch 'master' into user_logger_instead_of_printf 2017-09-01 00:05:22 -04:00
Gennadiy Civil
836c194a81 Merge pull request #1241 from aninf-wo/hethi/issue-635-old-links
change links from former code.google.com to current github repository
2017-08-31 18:28:19 -04:00
Herbert Thielen
2a720ac1bb Merge branch 'master' into hethi/issue-1175-cmake-build-type 2017-08-31 20:51:49 +02:00
Herbert Thielen
e033d8c73d change links from former code.google.com to current github repository 2017-08-31 18:12:17 +02:00
Gennadiy Civil
7f27d8bdd1 Merge branch 'master' into hethi/issue-1175-cmake-build-type 2017-08-31 11:13:09 -04:00
Herbert Thielen
84bd72ba3c Merge branch 'master' into hethi/fix-faq-example-comment 2017-08-31 16:12:27 +02:00
Herbert Thielen
14cf7f574a fix example's comment 2017-08-31 16:10:36 +02:00
Che-Hsun Liu
3eaba9f07c Merge branch 'master' into master 2017-08-31 19:02:12 +08:00
Claus Stovgaard
34355c0e87 Merge remote-tracking branch 'github_google/master' into master-github_frosteyes
# Conflicts:
#	.gitignore
2017-08-31 12:22:53 +02:00
Herbert Thielen
1a8ba67414 Merge branch 'master' into hethi/unused-import 2017-08-31 11:39:56 +02:00
Herbert Thielen
d6c46ebd04 Merge branch 'master' into hethi/issue-1175-cmake-build-type 2017-08-31 08:47:26 +02:00
Herbert Thielen
cfcc89a84a Merge branch 'master' into hethi/issue-1175-cmake-build-type 2017-08-30 21:46:30 +02:00
Gennadiy Civil
fa70b84ab5 Removed "Trivial"
Who knows? may not be very trivial given the code drift between internal and OSS
2017-08-30 14:51:36 -04:00
Gennadiy Civil
c4e01616af removed internal link ( not allowed in OSS) 2017-08-30 14:50:40 -04:00
Scott Graham
0eb49f4d6b Note that it is preferable for Googlers to create a CL internally first 2017-08-30 11:29:06 -07:00
Gennadiy Civil
bb1c4af487 Merge branch 'master' into master 2017-08-30 14:11:38 -04:00
Herbert Thielen
9ba7946bde create different python based tests for single and multi configuration build generators 2017-08-30 19:17:26 +02:00
Gennadiy Civil
4db9a748e3 Merge branch 'master' into hethi/unused-import 2017-08-30 11:47:32 -04:00
Herbert Thielen
47ad2993b6 Revert "ask cmake for per-configuration output subdir"
This reverts commit 73d58dd4c8.

Unfortunately, ${CMAKE_CFG_INTDIR} is set during build only and doesn't
help here.
2017-08-30 15:14:34 +02:00
Herbert Thielen
73d58dd4c8 ask cmake for per-configuration output subdir
On single-configuration build systems as Makefile Generators, there is
no subdirectory for the configuration in the build tree - therefore ask
cmake for the subdir by using CMAKE_CFG_INTDIR, which is just '.' on
single-configuration build systems (Linux et al.).
2017-08-30 12:59:06 +02:00
Herbert Thielen
7529c8aa05 remove obsolete comment regarding python tests on linux 2017-08-30 12:48:28 +02:00