summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Make sure that current_test_suite and current_test_info are mutex-protected ↵Abseil Team2024-02-273-30/+59
|/ / / | | | | | | | | | | | | | | | | | | while writing for thread-safety. PiperOrigin-RevId: 610810340 Change-Id: I37f33510373dff04b8e9c9e8a9f32d30fcce46ff
* | | Revert incorrect update.Abseil Team2024-02-221-2/+2
| | | | | | | | | | | | | | | PiperOrigin-RevId: 609387046 Change-Id: I03e42c39011fc7e9715f896591a44ebede1933b2
* | | Rollback ↵Derek Mauro2024-02-211-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/google/googletest/commit/9756ee7cbaef1b6652065616ab832810a6032bbf The commit breaks some bazel commands without @fuchsia_sdk being listed as a dependency. Fixes #4472 PiperOrigin-RevId: 609057667 Change-Id: I32ea8237862d7c10add55304ecc4547a7304ce36
* | | gtest.h: add IWYU export pragmasAbseil Team2024-02-151-10/+10
| | | | | | | | | | | | | | | PiperOrigin-RevId: 607136416 Change-Id: Ia29dd3156d4d455194745e58501eaee9d77045a1
* | | Support Fuchsia target builds.Abseil Team2024-02-141-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Fuchsia team has been using either fork branches (https://fuchsia.googlesource.com/third_ party/github.com/google/googletest/+/refs/heads/sandbox/fuchsia_bazel_sdk) or patch files (https://cs.opensource.google/fuchsia/fuchsia/+/main:build/bazel/patches/googletest/fuchsia-support.bundle) to support googletest-based tests that run against a Fuchsia target device. As our SDK is maturing and @platforms//os:fuchsia constraint has been added for a while now, upstream Fuchsia gtest support to reduce technical debt and overhead. This change is noop for non-fuchsia platform builds. PiperOrigin-RevId: 606843739 Change-Id: I61e0eb9c641f288d7ae57354fc0b484fce013223
* | | Add anchor for expectation ordering noteAbseil Team2024-02-131-0/+2
|/ / | | | | | | | | PiperOrigin-RevId: 606736565 Change-Id: Ifad0b34e1deeec1374377d733375c6210896d0d3
* | Switch rank structs to be consistent with written guidance in ↵Matt Kulukundis2024-02-071-11/+12
| | | | | | | | | | | | | | go/ranked-overloads PiperOrigin-RevId: 605110251 Change-Id: I304f3863333cb9ef0b85c5bab5277e757ef9950a
* | Use _Exit instead of _exit in GoogleTestAbseil Team2024-02-074-45/+49
| | | | | | | | | | | | | | | | _Exit is standardized since C99, whereas _exit is POSIX-only. Fixes: #4447 PiperOrigin-RevId: 605000352 Change-Id: Ibfa84edaa043bd003a21383e8148bf45be7217f6
* | Destroy installed environments in normal code, not in static teardown.Abseil Team2024-02-074-51/+67
| | | | | | | | | | | | | | | | | | | | | | Destruction in static teardown causes issues for Environments which own threads and try to join them in their destruction. This may be a breaking change for users who call RUN_ALL_TESTS multiple times in the same main function if they also install environments, or those who access registered environments after RUN_ALL_TESTS. The easiest fix is to only call RUN_ALL_TESTS once as the last line of the main function. Another potential fix is to re-register new instances of the Environment once before each call to RUN_ALL_TESTS. PiperOrigin-RevId: 604800795 Change-Id: I37c44d4aca4a238052649f45a4b6b9cfb5355b71
* | Merge pull request #4458 from kaswhy:patch-1Copybara-Service2024-02-051-0/+1
|\ \ | | | | | | | | | | | | PiperOrigin-RevId: 604402563 Change-Id: If99952449430161609572dab998774fac4653f01
| * | Add myself to Contributorsrefs/pull/4458/headSoyeon Kim2024-01-311-0/+1
| | |
* | | Modifications to improve portability of googletest tests.Abseil Team2024-01-312-5/+12
|/ / | | | | | | | | PiperOrigin-RevId: 603034597 Change-Id: I4d716ed67f80f41075bfa266d975460d2ac27eb6
* | Do not emit stack traces for messages generated by SUCCEED()Abseil Team2024-01-302-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stack traces in assertion failures are an extremely useful tool for developers tasked with investigating failing tests. It's difficult to understate this. In contrast to ordinary test assertions (e.g., ASSERT_TRUE or EXPECT_FALSE), SUCCEED() is a developer-authored directive that indicates a success codepath. In fact, the documentation states that this directive doesn't generate any output. Generating stack traces for uses of SUCCEED() is wasted work since they are never printed. If this were to change one day in the future, they still would not be useful since any emitted message would include the file and line number where SUCCEED was used. In addition to being noise in the output in this case, symbolization of stack traces is not free. In some Chromium configurations, symbolization for use of SUCCEED() can incur a cost in excess of 25 seconds for a test that otherwise takes 0-1ms; see https://crbug.com/1517343. In this CL, we suppress generation and emission of stack traces for kSuccess messages to reduce the overhead of SUCCEED(). PiperOrigin-RevId: 602832162 Change-Id: I557dd6a1d3e6ed6562daf727d69fd01fe914827b
* | Merge pull request #4435 from kaswhy:mainCopybara-Service2024-01-291-5/+15
|\ \ | | | | | | | | | | | | PiperOrigin-RevId: 602385832 Change-Id: I755dae5707e98b6157930a74de90a8e19ef17603
| * | Docs: Add mention of `gtest_recreate_environments_when_repeating`refs/pull/4435/headkaswhy2024-01-231-11/+13
| | |
| * | Docs: add conditions for calling SetUp and TearDown()kaswhy2024-01-111-8/+12
| | |
| * | Docs: add conditions for calling TearDown()kaswhy2023-12-281-3/+6
| | |
* | | Add support for Bzlmod for the next releaseDerek Mauro2024-01-258-22/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bazel.build/external/overview#bzlmod Bzlmod will be the default in a future Bazel release. By default it requires projects to be registered with the Bazel Central Registry (https://registry.bazel.build/) and thus uses regular releases by default. Users that want to "live-at-head" can still do this through with overrides (https://bazel.build/external/module#overrides). This change updates GoogleTest dependencies to use released versions. CI uses Bzlmod except in the case of linux_gcc-floor, which will keep testing the old WORKSPACE-based dependency system. PiperOrigin-RevId: 601489729 Change-Id: I6be52034eba0d0e5fe12110e5e82879305cf73ff
* | | Fix double-promotion warnings in AppropriateResolution()Abseil Team2024-01-231-21/+28
| | | | | | | | | | | | | | | | | | | | | When -Wdouble-promotion is enabled, the templatized function AppropriateResolution fails to compile since its float instantiation promotes floats to doubles when doing arithmetic and comparisons. Add static casts to resolve these errors. PiperOrigin-RevId: 600776333 Change-Id: Ia530b4bbca6ddce27caf0a817196d87efef711cb
* | | Merge pull request #4444 from ↵Copybara-Service2024-01-221-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | michaeldleslie:only_apply_lregex_for_qnx710_and_newer PiperOrigin-RevId: 600548775 Change-Id: Ia693791321602e728aef9135b349602c790a058a
| * | | only apply -lregex for qnx710 and newerrefs/pull/4444/headMichael Leslie2024-01-101-1/+1
| | | |
* | | | googletest: Fix incorrect comment about `value_param` of ↵Dino Radakovic2024-01-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `internal::MakeAndRegisterTestInfo` This was probably a copy-paste from the comment about `type_param`. PiperOrigin-RevId: 600493462 Change-Id: I4a41c2673dd6560db0f68856aab3d32b103164b1
* | | | If GTEST_NO_ABSL_FLAGS is #defined, then the Abseil flag libraryAbseil Team2024-01-182-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | will not be used by googletest, even if GTEST_HAS_ABSL is #defined. PiperOrigin-RevId: 599625032 Change-Id: Ieb994a15683dec89e88578120071eca8ac9fead1
* | | | Make posix::FileNo available under !GTEST_HAS_FILE_SYSTEMAbseil Team2024-01-162-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This enables automatic color output without filesystem support, as that only requires testing to see if the output is a terminal. Fixes: #4439 PiperOrigin-RevId: 598929397 Change-Id: Idca7490e6e090951a78cd1cdd710f41d756a68b4
* | | | Do not emit stack traces for messages generated by GTEST_SKIP()Abseil Team2024-01-163-8/+15
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stack traces in assertion failures are an extremely useful tool for developers tasked with investigating failing tests. It's difficult to understate this. In contrast to ordinary test assertions (e.g., ASSERT_TRUE or EXPECT_FALSE), GTEST_SKIP is a developer-authored directive to skip one or more tests. Stack traces emitted in skip messages do not give the developer useful information, as the skip message itself contains the code location where GTEST_SKIP was used. In addition to being noise in the output, symbolization of stack traces is not free. In some Chromium configurations, symbolization in a skipped test can incur a cost in excess of 25 seconds for a test that otherwise takes 0-1ms; see https://crbug.com/1517343#c9. In this CL, we suppress generation and emission of stack traces for kSkip messages to reduce the output noise and overhead of GTEST_SKIP(). PiperOrigin-RevId: 598899010 Change-Id: I46926fed452c8d7edcb3d636d8fed42cb6c0a9e9
* | | Update CI builds to use Bazel 7.0.0Derek Mauro2024-01-093-7/+5
| | | | | | | | | | | | | | | | | | | | | --features=external_include_paths has been removed from Windows builds since it appears cause build command errors currently PiperOrigin-RevId: 597020418 Change-Id: Ie37be0d05f3a154ab0d3c3f7d39b4e2c0ed650a3
* | | Add a note about argv requiring NULL termination.Abseil Team2024-01-091-1/+3
| | | | | | | | | | | | | | | | | | Fixes: #4434 PiperOrigin-RevId: 596960654 Change-Id: I1f70cc0801764fe0328030c46254f82eb9893a49
* | | Disable -Wfloat-equal in AppropriateResolution().Krzysztof Kosiński2024-01-091-0/+7
|/ / | | | | | | | | | | | | This function makes exact floating point that are correct in this context, but trigger the compiler warning. PiperOrigin-RevId: 596944060 Change-Id: I4bba3c2abcf3ac189107530978961955ad47d6f0
* | Accept move-only callables in `InvokeArguments`Abseil Team2023-12-282-2/+14
| | | | | | | | | | PiperOrigin-RevId: 594223533 Change-Id: I491fae7d851d4e0df07fb3627416949071fec8d6
* | Minor documentation correction.Abseil Team2023-12-221-2/+2
| | | | | | | | | | PiperOrigin-RevId: 593126348 Change-Id: I78e12ab5dd2e5acc69b21250bdb04e62990b6309
* | Fix broken links in primer.mdDerek Mauro2023-12-191-2/+2
| | | | | | | | | | | | | | Closes #4432 PiperOrigin-RevId: 592335698 Change-Id: I9859451981f58f1426255067d702a0767718b1d5
* | Fix data race in leak detectionAbseil Team2023-12-181-0/+1
| | | | | | | | | | | | | | | | | | TSAN identified a data race between updates to the states_ map (ex. in Mock::UnregisterLocked) and the iteration done in this destructor. Writes to the map use g_gmock_mutex, but the destructor does not acquire it. Acquiring the lock here fixes the data race. It should only be possible to trigger this TSAN finding in cases where a mock object is deleted by a thread other than the main thread. PiperOrigin-RevId: 591935393 Change-Id: I9dd1faa40058d78e165a91333346514b4b73365c
* | Add `FAIL_AT` macro variant of `FAIL` matching `ADD_FAILURE`, `ADD_FAILURE_AT`Abseil Team2023-12-131-0/+1
| | | | | | | | | | | | | | `FAIL_AT` is shorthand for `GTEST_FAIL_AT` like `FAIL` is for `GTEST_FAIL`. PiperOrigin-RevId: 590393926 Change-Id: I68263af8fa2f98ca0bbef509d475c84e22068018
* | Remove unnecessary conversionTom Hughes2023-12-121-2/+2
| | | | | | | | | | | | | | | | `GetAbsolutePathToOutputFile` returns a `std::string` and `OpenFileForWriting` takes a `std::string&`. PiperOrigin-RevId: 589984409 Change-Id: I75be9cb105f49b3a279a5d33b1b82dfcfc912cfd
* | Merge pull request #4426 from tamaskenez:cmake_external_absl_re2Copybara-Service2023-12-042-0/+13
|\ \ | | | | | | | | | | | | PiperOrigin-RevId: 587836393 Change-Id: Ia8895898bd0a826b35dc0ebedd8c76503bc8cd43
| * | Allow using external absl and re2.refs/pull/4426/headTamas Kenez2023-12-012-0/+13
| | |
* | | Skip find_package(Python3) when not building testsDerek Mauro2023-12-041-1/+3
|/ / | | | | | | | | | | | | | | #4424 claims this saves several seconds of build time Closes #4424 PiperOrigin-RevId: 587827426 Change-Id: I207779a6539f9af16a39d6b40887770dc930b74f
* | Implement `testing::Rethrow` to throw exceptions more easily via ↵Abseil Team2023-11-272-3/+30
| | | | | | | | | | | | | | | | | | | | | | `std::exception_ptr` We avoid overloading or specializing `testing::Throw` as this is fundamentally a different operation than throwing the object. However, we disable the corresponding overload of `testing::Throw` to prevent likely mistakes in the usage. Fixes: #4412 PiperOrigin-RevId: 585745469 Change-Id: I03bb585427ce51983d914e88f2bf65a13545c920
* | Merge pull request #4397 from botovq:raiseCopybara-Service2023-10-301-0/+1
|\ \ | | | | | | | | | | | | PiperOrigin-RevId: 577958594 Change-Id: I8a27f67dc5b6817b741bfd2fc0f27c6302291a00
| * | Add missing include for raise(3)refs/pull/4397/headTheo Buehler2023-10-251-0/+1
| | | | | | | | | | | | | | | | | | If SIGTRAP is defined, this file may end up using raise(3), which is defined in csignal, leading to a compilation failure on at least OpenBSD/sparc64 with gcc 8.
* | | Export gmock-spec-builders.Abseil Team2023-10-261-0/+1
|/ / | | | | | | | | | | | | | | | | gmock.h is the umbrella header to be used for rest of the library, and it also enables users to export certain details. This wasn't working for some interfaces like EXPECT_CALL because gmock-spec-builders wasn't explicitly exported. PiperOrigin-RevId: 576966583 Change-Id: Ie050430cf11384977cd95f4ed6e73235d6857057
* | StartsWith: Explicitly construct matcher-typed strings from matchee parameterrefs/pull/4398/headDino Radakovic2023-10-232-2/+11
| | | | | | | | | | | | | | | | | | The current implementation breaks for absl::string_view on gcc, c++14: https://godbolt.org/z/Tzd3q1fqx Closes #4391 PiperOrigin-RevId: 575853981 Change-Id: I7b782598add480eb69d4ca27ea4a4bf5f758f6a3
* | Improve error message for invalid parameterized test names.Abseil Team2023-10-191-2/+2
| | | | | | | | | | PiperOrigin-RevId: 574992011 Change-Id: Id6030a9e5f317966186cc48ef2c09ad97fa15d3e
* | s/::testing::/testing::/ in test documentation outside of using statements ↵Abseil Team2023-10-181-7/+7
| | | | | | | | | | | | | | to align with best practice PiperOrigin-RevId: 574377544 Change-Id: I0ca69a3bf14cc1aab75784eba220a48bf50cef04
* | gtest-death-test-internal: Delete obsolete string constantsDino Radakovic2023-10-171-3/+1
| | | | | | | | | | | | | | These are not used anywhere in googletest and they are in namespace `testing::internal` PiperOrigin-RevId: 574171727 Change-Id: I5f668157a81ba3efaed77c1302b40cf07eeda52b
* | Fix RE::Init for Android and NetBSD.Abseil Team2023-10-052-4/+15
| | | | | | | | | | | | | | | | | | This is a somewhat recent change for Android (I'm not clear on whether it's a recent change for NetBSD, or if Android was just very behind on its implementation), so while this worked fine as recently as API 32 devices, REG_GNU is required for API 34 (API 33 untested). A test actually caught this, but https://github.com/google/googletest/pull/4334 "fixed" the test rather than the implementation. This CL also reverts the test change so it can catch the failure. PiperOrigin-RevId: 571126374 Change-Id: I420dfcedea58f2c8b605f699515d744006c0a9d9
* | gmock_cook_book: Document `DoAll`'s return type requirementDino Radakovic2023-10-031-0/+6
| | | | | | | | | | | | | | | | The requirement is vaguely documented by "Only the return value of the last action in the sequence will be used.". However, this can be misleading, as users could potentially expect default-constructed values to be returned in absence of a matching return type. PiperOrigin-RevId: 570450839 Change-Id: Ibd98a6e6b2aaf2a8cfc15ed6aeab442526eab98e
* | Merge pull request #4382 from idzm:fix_cmake_commentsCopybara-Service2023-10-024-42/+42
|\ \ | | | | | | | | | | | | PiperOrigin-RevId: 570161165 Change-Id: Idf7eafb163bb067b0031e25a183d5c9cc3e3f378
| * | cmake: Fix comments in cmake filesrefs/pull/4382/headDzmitry Ivaniuk2023-09-294-43/+42
|/ / | | | | | | Remove extra spaces. Fix so that the comment line starts with a capital letter and ends with a dot.
* | Resolve `-Wundef` triggering on `GTEST_CREATE_SHARED_LIBRARY` and ↵Abseil Team2023-09-251-2/+2
| | | | | | | | | | | | | | | | `GTEST_LINKED_AS_SHARED_LIBRARY` with shared libraries in GoogleTest Fixes: #4372 PiperOrigin-RevId: 568327612 Change-Id: Ifc47f1a2a2648c29858a22966331557cc928cc47