Commit Graph

1707 Commits

Author SHA1 Message Date
Abseil Team
530d5c8c84 Add FAIL_AT macro variant of FAIL matching ADD_FAILURE, ADD_FAILURE_AT
`FAIL_AT` is shorthand for `GTEST_FAIL_AT` like `FAIL` is for `GTEST_FAIL`.

PiperOrigin-RevId: 590393926
Change-Id: I68263af8fa2f98ca0bbef509d475c84e22068018
2023-12-12 17:40:45 -08:00
Tom Hughes
eb80f759d5 Remove unnecessary conversion
`GetAbsolutePathToOutputFile` returns a `std::string` and `OpenFileForWriting`
takes a `std::string&`.

PiperOrigin-RevId: 589984409
Change-Id: I75be9cb105f49b3a279a5d33b1b82dfcfc912cfd
2023-12-11 16:17:28 -08:00
Copybara-Service
b3a9ba2b8e Merge pull request #4426 from tamaskenez:cmake_external_absl_re2
PiperOrigin-RevId: 587836393
Change-Id: Ia8895898bd0a826b35dc0ebedd8c76503bc8cd43
2023-12-04 14:11:54 -08:00
Derek Mauro
8760db154a Skip find_package(Python3) when not building tests
#4424 claims this saves several seconds of build time
Closes #4424

PiperOrigin-RevId: 587827426
Change-Id: I207779a6539f9af16a39d6b40887770dc930b74f
2023-12-04 13:42:25 -08:00
Tamas Kenez
48b373f6e0 Allow using external absl and re2. 2023-12-01 23:09:53 +01:00
Copybara-Service
b10fad38c4 Merge pull request #4397 from botovq:raise
PiperOrigin-RevId: 577958594
Change-Id: I8a27f67dc5b6817b741bfd2fc0f27c6302291a00
2023-10-30 14:33:13 -07:00
Theo Buehler
7f036c5563 Add missing include for raise(3)
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.
2023-10-25 07:52:23 +02:00
Abseil Team
116b7e5528 Improve error message for invalid parameterized test names.
PiperOrigin-RevId: 574992011
Change-Id: Id6030a9e5f317966186cc48ef2c09ad97fa15d3e
2023-10-19 13:55:15 -07:00
Dino Radakovic
829c19901d gtest-death-test-internal: Delete obsolete string constants
These are not used anywhere in googletest and they are in namespace `testing::internal`

PiperOrigin-RevId: 574171727
Change-Id: I5f668157a81ba3efaed77c1302b40cf07eeda52b
2023-10-17 09:18:52 -07:00
Abseil Team
2dd1c13195 Fix RE::Init for Android and NetBSD.
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
2023-10-05 14:13:04 -07:00
Copybara-Service
a6d7fa8c0c Merge pull request #4382 from idzm:fix_cmake_comments
PiperOrigin-RevId: 570161165
Change-Id: Idf7eafb163bb067b0031e25a183d5c9cc3e3f378
2023-10-02 13:30:23 -07:00
Dzmitry Ivaniuk
2d09ed35cf cmake: Fix comments in cmake files
Remove extra spaces. Fix so that the comment line starts with a capital letter and ends with a dot.
2023-09-29 17:26:23 +03:00
Abseil Team
e47544ad31 Resolve -Wundef triggering on GTEST_CREATE_SHARED_LIBRARY and GTEST_LINKED_AS_SHARED_LIBRARY with shared libraries in GoogleTest
Fixes: #4372
PiperOrigin-RevId: 568327612
Change-Id: Ifc47f1a2a2648c29858a22966331557cc928cc47
2023-09-25 14:38:01 -07:00
Abseil Team
e40661d89b Update C++ feature detection in gtest-port.h to rely on feature test macros where possible.
This also avoids conflating C++ language versions with standard library versions, which don't always align.

PiperOrigin-RevId: 567662118
Change-Id: I7c023bd043c81c540c9430eaeb7b450feaadb206
2023-09-22 10:46:16 -07:00
Abseil Team
80306a7b5e Use absl::HasAbslStringify, instead of the internal version.
PiperOrigin-RevId: 567349341
Change-Id: I35f2679901aecbe9cb90d2e78ff28c5e383e7257
2023-09-21 10:32:25 -07:00
Abseil Team
8be20cce69 Use the empty() method to check for emptiness instead of length()
PiperOrigin-RevId: 566247438
Change-Id: I8199ef53310a057abbe23f8f4295507b60d6b707
2023-09-18 03:20:19 -07:00
Copybara-Service
af5ddbde4d Merge pull request #4342 from tanzislam:prefer-tmpdir-on-android
PiperOrigin-RevId: 565230380
Change-Id: I6e91eea46d05413d4d87e73a11941786604d9f27
2023-09-13 19:36:52 -07:00
Tanzinul Islam
b86bf840d1 Count threads after thread-creation while still holding mutex lock
The `Mutex` is locked with the `MutexLock` before spawning the thread, so that the thread is prevented from completing (by being blocked on `Mutex`) before the new thread count is obtained. However, the existing bug (introduced in 22e6055) releases `Mutex` before obtaining the new thread count, which allows the thread to run to completion in the meantime.

Also, since the `(thread_count_after_create != starting_count + 1)` condition (line 328) skips the remainder of the `for`-loop body on every iteration, `thread_count_after_join` stays uninitialized.

I believe this is why [this test failed][1] on the macOS CI with this trace:

```
[----------] 1 test from GetThreadCountTest
[ RUN      ] GetThreadCountTest.ReturnsCorrectValue
googletest/test/googletest-port-test.cc:350: Failure
Expected equality of these values:
  thread_count_after_create
    Which is: 1
  starting_count + 1
    Which is: 2

googletest/test/googletest-port-test.cc:351: Failure
Expected equality of these values:
  thread_count_after_join
    Which is: 140493185949400
  starting_count
    Which is: 1

[  FAILED  ] GetThreadCountTest.ReturnsCorrectValue (2 ms)
[----------] 1 test from GetThreadCountTest (2 ms total)
```

[1]: https://github.com/google/googletest/actions/runs/6064919420/job/16453860690?pr=3049
2023-09-03 16:46:02 +01:00
Tanzinul Islam
edf9b4964d Reuse TempDir() function 2023-08-26 08:53:45 +01:00
Dino Radakovic
8a6feabf04 googletest: Add universal printer for std::span
Fixes #4318

PiperOrigin-RevId: 560089120
Change-Id: I9d0d098140033520266747a1689e953ee8307c47
2023-08-25 07:46:02 -07:00
Copybara-Service
460ae98267 Merge pull request #4349 from sthd:httpToHttps
PiperOrigin-RevId: 559452348
Change-Id: I6f72001fd6b8e5a739c34121c8847c281d563b0f
2023-08-23 09:30:13 -07:00
sthd
f0eae4b399 changed http to https 2023-08-22 20:58:34 +03:00
Copybara-Service
9fce548044 Merge pull request #4322 from pgawro:ansi_colors
PiperOrigin-RevId: 558224853
Change-Id: Ib2d8ad41fcc4d38f58aa5702b537467d8867d82e
2023-08-18 12:59:42 -07:00
Tanzinul Islam
14d05f4708 Prefer $TMPDIR to /data/local/tmp on Android
Newer devices can have the latter location read-only. (I observed this with Termux on a non-rooted Pixel 6.)
2023-08-18 19:44:48 +01:00
Abseil Team
f42da0e443 Improve error message for invalid parameterized test names.
PiperOrigin-RevId: 557910190
Change-Id: Ia965a6c96e4cc5997d8af2611abc62c42e81653e
2023-08-17 12:56:29 -07:00
Patryk Gawroński
e24cced08d googletest: ansi color fix
Adds prevents from returning
nullptr by choosing default color.

Issue: #4321
2023-08-17 00:11:28 +02:00
Copybara-Service
987e225614 Merge pull request #4333 from ngie-eign:gtest_help_test-fix-FreeBSD
PiperOrigin-RevId: 557197748
Change-Id: I55b86353f5351bbcbdf8e6bca70e82d7383a5080
2023-08-15 11:39:35 -07:00
Dino Radakovic
dd9a956904 gtest_help_test: Make method names snake_case, conforming with [the style guide](https://google.github.io/styleguide/pyguide#316-naming)
PiperOrigin-RevId: 557133618
Change-Id: I27202ee91ee81b3d2e4c28102190d2bde8efba05
2023-08-15 08:00:31 -07:00
Dino Radakovic
6513d0272d gtest_help_test: Inline test helper functions
`TestNonHelpFlag` is only a few asserts with no logic, which is easier to read in line, and helper `TestHelpFlag` is used in a single test case.

PiperOrigin-RevId: 557122793
Change-Id: I7367424abfbb883c10c260fae066a2071e5dfa0e
2023-08-15 07:11:58 -07:00
Copybara-Service
fc234d6d18 Merge pull request #4334 from ngie-eign:fix-RETest-non-ABSL
PiperOrigin-RevId: 557122083
Change-Id: I77fb7fe99baf9cbf341ad37d4b651a0ac606b549
2023-08-15 07:08:30 -07:00
Dino Radakovic
d76e9e0dd9 gtest_help_test: Delete obsolete helper TestUnknownFlagWithAbseil
PiperOrigin-RevId: 557116814
Change-Id: I91e06b0d6001952366c50201b67491475a1f98af
2023-08-15 06:42:46 -07:00
Copybara-Service
89b25572db Merge pull request #4330 from IncludeGuardian:remove-iomanip
PiperOrigin-RevId: 554867591
Change-Id: Ib32da50384951532419cb54fb70f8ab0920178d7
2023-08-08 10:26:39 -07:00
Enji Cooper
77485ff004 Fix RETest/1.ImplicitConstructorWorks on non-ABSL platforms
The last regular expression specified in the test is not technically
POSIX compatible. Use `[[:alnum:]_]` instead of `\w+`; the latter is a
Perl-compatible regular expression.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2023-08-07 21:37:54 -07:00
Enji Cooper
22eb2de1ef Fix GTestHelpTest.TestHelpFlag on FreeBSD
The test supported a variety of BSDs, including kFreeBSD, but not FreeBSD.

Move the BSD checks to a separate function and support checking for
FreeBSD, in addition to kFreeBSD.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2023-08-07 20:18:01 -07:00
Elliot Goodrich
9ef5e82269 Remove public includes of <iomanip>
This commit removes `<iomanip>` from public GoogleTest header files.

As `<iomanip>` is not a common included file, its content is unlikely
to be included in translation units other than through GoogleTest
includes.

By reducing the number of include directives public headers in
GoogleTest, this may reduce the time taken to compile tests as it would
reduce the amount of work that the preprocessor and compiler front-end
need to do.
2023-08-03 22:14:38 +01:00
Copybara-Service
455fcb7773 Merge pull request #4323 from pgawro:gtest_ExpectThrowTest_DoesNotGenerateUnreachableCodeWarning
PiperOrigin-RevId: 553485739
Change-Id: I6581215e6db514397177af39381eea4d121f32bd
2023-08-03 08:32:42 -07:00
Derek Mauro
843976e4f5 Update documentation to refer to v1.14
PiperOrigin-RevId: 553172719
Change-Id: Ie09afa3788c8ed5c95913d8ca0b436f1df28241a
2023-08-02 09:45:10 -07:00
Derek Mauro
96683ee668 Remove the GTEST_HAS_DOWNCAST_ customization point.
PiperOrigin-RevId: 553150809
Change-Id: I10d19a45a85c5f63a5e65dc322413307116e1c25
2023-08-02 08:19:45 -07:00
Derek Mauro
58e37f7e99 Add googletest-message-test to the Bazel tests
It appears to have been unintentionally left out

PiperOrigin-RevId: 553141410
Change-Id: I8adac55a3df0ec12d6fe03446f71858fc702e178
2023-08-02 07:40:55 -07:00
Phoebe Liang
e7fd109b53 Make testing::Message support streamed AbslStringify values
This allows types that provide an AbslStringify definition to be streamed into GoogleTest macros.

PiperOrigin-RevId: 552914482
Change-Id: I5fb386980d4d24873f95f0a8ef83067a6a3c86ac
2023-08-01 14:01:41 -07:00
Copybara-Service
6f6ab4212a Merge pull request #4325 from juliencombattelli:main
PiperOrigin-RevId: 552577282
Change-Id: I2b4d20d155ad5746e36711c039293d5c996a332e
2023-07-31 13:32:19 -07:00
Julien Combattelli
efe6bb1db8 Use #if and not #ifdef to check filesystem support 2023-07-29 15:54:54 +02:00
Abseil Team
c875c4e224 Adjust includes to use <> instead of "", consistent with quickstart pages.
Right now, gtest documentation uses different #include syntax. The quickstart
pages (e.g., http://google.github.io/googletest/quickstart-bazel.html#create-and-run-a-binary) are checked in with `#include <gtest/gtest.h>` However, other
documentation (such as the primer) uses `#include "gtest/gtest.h"` (e.g.,
https://google.github.io/googletest/primer.html#writing-the-main-function).

PiperOrigin-RevId: 551878641
Change-Id: Iab93cc1da3ef4870a07b624071b75d6e9d3568c1
2023-07-28 09:51:41 -07:00
Patryk Gawroński
2f83a6e8f8 gtest: Supress warning about set unused variable
Modified test ExpectThrowTest.DoesNotGenerateUnreachableCodeWarning
2023-07-27 01:49:57 +02:00
Abseil Team
01e18376ef Make AbslStringify usage public in GoogleTest
Fixes #4314

PiperOrigin-RevId: 549986457
Change-Id: Iff74f02ab1c106696f288540e9c623d56b76e3f7
2023-07-21 10:36:25 -07:00
Derek Mauro
1ed6a8c67a Remove unused cast implementation
PiperOrigin-RevId: 549456180
Change-Id: I10862e6de981087a5c590cccf6152255e9a176a0
2023-07-19 16:21:55 -07:00
Copybara-Service
d66ce58510 Merge pull request #4313 from kimvaleen:main
PiperOrigin-RevId: 549039222
Change-Id: I96bea310beede5ba0ed6160155251ffd9d7a2103
2023-07-18 10:18:14 -07:00
Copybara-Service
c541e7c110 Merge pull request #4302 from ciband:feat/nrf52
PiperOrigin-RevId: 549006105
Change-Id: Ifbe2bf57e10df4c71e51dbfaf1687f4f621f5106
2023-07-18 08:16:57 -07:00
Copybara-Service
cc366710bb Merge pull request #4308 from smr99:fix-float-cast
PiperOrigin-RevId: 547250378
Change-Id: I084c30e45f331cb296535822923da1cb7e848e11
2023-07-11 11:37:29 -07:00
kimvaleen
c88e0b4673 Fixed variables that could be declared 'const' 2023-07-11 12:05:05 +03:00