4331 Commits

Author SHA1 Message Date
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
Dino Radakovic
beb552fb47 gmock_cook_book: Document DoAll's return type requirement
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
2023-10-03 11:41:48 -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
Copybara-Service
5bd0f08e0d Merge pull request #4374 from masbug:main
PiperOrigin-RevId: 568317621
Change-Id: Icf7fb519f96f5e88eb0df491eed143134c8ac6eb
2023-09-25 14:00:54 -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
Dino Radakovic
167a2255ae googletest: Update absl to version with HasAbslStringify
9e1789ffea

PiperOrigin-RevId: 567324946
Change-Id: I8adc5803a81075a635dad79aa0312d4455e1ad63
2023-09-21 09:08:09 -07:00
Mitja Spes
e27b194c27 Fix compile warnings in gmock-function-mocker.h
Template type int changed to size_t.
This fixes compile warning `conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result` in gmock-function-mocker.h.
2023-09-21 10:06:21 +02:00
Abseil Team
adc5145386 Update code with IWYU annotations.
PiperOrigin-RevId: 566424331
Change-Id: I0e16d979b9d79643c882c5082e154842983a5317
2023-09-18 15:04:08 -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
Michael Hirshleifer
d1467f5813 GoogleTest FAQ: minor punctuation fixes
PiperOrigin-RevId: 565411290
Change-Id: I57e94c679183e39eec2a2835f330b52fc9302767
2023-09-14 10:37:04 -07:00
Michael Hirshleifer
728ec52d21 Remove Googletest FAQ entry for obsolete ProtocolMessageEquals and ProtocolMessageEquiv
* These long-dead variants of the proto matchers don't exist in the current version of Googletest.
* No evidence of external usage: [the only external references I see](https://www.google.com/search?q=%22protocolmessageequals%22+OR+%22protocolmessageequals%22) are copies of this guide. Possibly they were already removed by the time Googletest was publicly released.

PiperOrigin-RevId: 565358401
Change-Id: I61379b7333fa8ee19cd5520caedf2c539f54c2d7
2023-09-14 07:13:20 -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
Copybara-Service
eab0e7e289 Merge pull request #4365 from tanzislam:fix-thread-count-after-thread-creation
PiperOrigin-RevId: 564472305
Change-Id: I8db9bc0ba0768e7ab9c67f36d9db87edbbf14f10
2023-09-11 12:46:26 -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
cb5cd96bca Merge pull request #4343 from sthd:http-to-https
PiperOrigin-RevId: 559151399
Change-Id: I8eb2c7c5222d0fd0935db531a0abe5792633fe7e
2023-08-22 10:24:02 -07:00
Dino Radakovic
c374da15c5 googletest: Replace http with https in links to docs
This is a prerequisite for #4341

PiperOrigin-RevId: 559132807
Change-Id: Iadc961913e0ff107c5333dae17be5f8638663836
2023-08-22 09:21:04 -07:00
Derek Mauro
61332bd7e8 CI: Update the Linux hybrid-latest docker container used for testing
The following are the major updates
  * LLVM 17 branch (https://github.com/llvm/llvm-project b744f4c99cf91155c74a3c92db6f1335232ff3d)
  * GCC 13.2
  * CMake 3.27.1
  * Bazel 6.2.1

PiperOrigin-RevId: 558818264
Change-Id: Ib08d8331e2a8b2d68a702670451beaaac5d266f4
2023-08-21 09:50:40 -07:00
Abseil Team
762d3a7f66 Clean up typos: Exhaused => Exhausted
PiperOrigin-RevId: 558801066
Change-Id: Ia225d12014748db87639414f4c8c28a0d0e9e489
2023-08-21 08:47:54 -07:00
Elior Schneider
c759a58a2d
Merge branch 'google:main' into http-to-https 2023-08-20 09:39:17 +03:00
Elior Schneider
722daa3da6
Update advanced.md
http to https
2023-08-20 09:38:57 +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
Elior Schneider
5e47c767ff
Merge branch 'google:main' into http-to-https 2023-08-18 16:34:00 +03: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
sthd
8ca57f194a Changed 2 public links from http to https 2023-08-11 11:26:59 +03:00
sthd
5b5ef29950 Changed 3 public links from http to https 2023-08-11 11:21:47 +03:00
sthd
622ee5cf29 Changed 2 public links from http to https 2023-08-11 11:06:25 +03:00
sthd
619601c5e2 Changed 3 public links from http to https 2023-08-11 11:01:14 +03:00
Abseil Team
7e33b6a1c4 Specify SetUpTestSuite is required to be public.
PiperOrigin-RevId: 555578256
Change-Id: I9366fc99ae953c29e468fcddb4be203c9c05661b
2023-08-10 11:27:05 -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
Copybara-Service
46db91ef6f Merge pull request #4328 from robert-shade:suppress_unreachable_warning
PiperOrigin-RevId: 554578443
Change-Id: Ib5b03605c30fc2974b9597860577ff89532eedcd
2023-08-07 13:39:47 -07:00
Dino Radakovic
6abc9e3d79 Make references to #includes consistent across docs
PiperOrigin-RevId: 554561504
Change-Id: Ia02ab6ac646bf6637d6f500a4aaedd14e0a04798
2023-08-07 12:44:53 -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
Robert Shade
429432e341 Avoid unreachable code warning 2023-08-02 14:09:54 -04:00