4240 Commits

Author SHA1 Message Date
Derek Mauro
544c96ed5b Remove FloatingPoint::Max() in favor of std::numeric_limits::max()
In #4113 a user says Max clashes with a macro. Since it is only used in
a test, use std::numeric_limits::max() instead.

Note that in headers, the macro issue can be mitigated with
parenthesis like this: `(std::numeric_limits<T>::max)()`

PiperOrigin-RevId: 504284906
Change-Id: Ibf430caec1a6afdf6b303534fec6a4fd00a6373f
2023-01-24 08:41:35 -08:00
Abseil Team
ec25eea8f8 Mention using MockFunction as a way to mock free functions.
PiperOrigin-RevId: 502901538
Change-Id: I0cf351b9ad1411ae9c45e09550c24e006a24e179
2023-01-18 09:43:56 -08:00
Tom Hughes
bdb3b0a493 Replace deprecated python calls
assert_ -> assertTrue/assertFalse/assertIn/assertNotIn
assertEquals -> assertEqual

PiperOrigin-RevId: 502654909
Change-Id: I25d30095a83c3806606cb80d676b3c979495e6bd
2023-01-17 12:16:29 -08:00
Dino Radakovic
bba28fa8b2 Announce that GitHub actions are not GoogleTest's canonical CI
PiperOrigin-RevId: 502654465
Change-Id: I51269e8c389ad63f3737132feec1b6d20dc4c314
2023-01-17 12:14:32 -08:00
Tom Hughes
5cd81a7848 Fix -Wimplicit-int-float-conversion warning
We're intentionally losing precision in this case, so add a cast.

googletest/googletest/include/gtest/gtest-printers.h:532:9: error:
implicit conversion from 'int32_t' (aka 'int') to 'float' may lose precision
[-Werror,-Wimplicit-int-float-conversion]
    if (static_cast<int32_t>(val * mulfor6 + 0.5) / mulfor6 == val) return 6;
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~

googletest/googletest/include/gtest/gtest-printers.h:544:9: error:
implicit conversion from 'int32_t' (aka 'int') to 'float' may lose precision
[-Werror,-Wimplicit-int-float-conversion]
    if (static_cast<int32_t>(val / divfor6 + 0.5) * divfor6 == val) return 6;
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~

PiperOrigin-RevId: 502646042
Change-Id: I05989ee42675b531a9907616c9582a5a7c77bed6
2023-01-17 11:44:46 -08:00
Derek Mauro
9d697cc81c Update documentation for v1.13.0
PiperOrigin-RevId: 502644180
Change-Id: Id20b5e4eec22035da278f1767002657f66dbe79c
2023-01-17 11:38:05 -08:00
Derek Mauro
b796f7d446 Bump version to 1.13.0 in preparation for release
PiperOrigin-RevId: 502626077
Change-Id: I3aad27a8b725cf73163e52ef2e28e6cdfc13082b
v1.13.0-pre v1.13.0
2023-01-17 10:36:43 -08:00
Abseil Team
ac7a126f39 gmock_output_test: normalize golden file output to unix line endings
When checked out on Windows, the repo might use \r\n line endings,
and so the golden output has them.  Adjust for that.

PiperOrigin-RevId: 502577222
Change-Id: Iabfe537f6d95a49bf6bdcb934e855d28c65f6f89
2023-01-17 07:12:50 -08:00
Tom Hughes
356fc30125 Fix -Wshadow warnings
../googlemock/test/gmock-actions_test.cc:687:36: warning: declaration of ‘v’ shadows a member of ‘testing::{anonymous}::ReturnTest_SupportsReferenceLikeReturnType_Test::TestBody()::Result’ [-Wshadow]
  687 |     Result(const std::vector<int>& v) : v(&v) {}  // NOLINT
      |            ~~~~~~~~~~~~~~~~~~~~~~~~^
../googlemock/test/gmock-actions_test.cc:686:29: note: shadowed declaration is here
  686 |     const std::vector<int>* v;
      |                             ^

../googlemock/test/gmock-actions_test.cc: In constructor ‘testing::{anonymous}::ReturnTest_PrefersConversionOperator_Test::TestBody()::Out::Out(int)’:
../googlemock/test/gmock-actions_test.cc:720:28: warning: declaration of ‘x’ shadows a member of ‘testing::{anonymous}::ReturnTest_PrefersConversionOperator_Test::TestBody()::Out’ [-Wshadow]
  720 |     explicit Out(const int x) : x(x) {}
      |                  ~~~~~~~~~~^
../googlemock/test/gmock-actions_test.cc:718:9: note: shadowed declaration is here
  718 |     int x;
      |         ^

PiperOrigin-RevId: 501580618
Change-Id: I584710fbbe440ec724f88746e51f3be5653c32d5
2023-01-12 09:04:13 -08:00
Derek Mauro
b5401fef68 Add an explicit #error that C++ versions less than C++14 are not supported
PiperOrigin-RevId: 501568410
Change-Id: I0f78cd96dc9204c8ec97a1cdd09a9d63a613cc5b
2023-01-12 08:10:36 -08:00
Derek Mauro
a652ae0575 Update GoogleTest dependencies
PiperOrigin-RevId: 501282034
Change-Id: I0314ac566dc5e117db5a06c97d303e5cf8822d61
2023-01-11 07:57:13 -08:00
Tom Hughes
9345421658 Fix GTEST_OS_ESP8266 check
Everywhere else in the code, we check the value of GTEST_OS_ESP8266, not just
whether it is defined.

PiperOrigin-RevId: 499946909
Change-Id: I86f7e8947abb4e928fc24d1416d8237987b27845
2023-01-05 11:15:29 -08:00
Tom Hughes
e5e46b09a1 IWYU: Add missing std includes
PiperOrigin-RevId: 499893032
Change-Id: I33304802b7c82ae2d008f3ee89df38866e5f57ba
2023-01-05 08:44:01 -08:00
Derek Mauro
0296d7d370 Workaround for GCC12 bug illustrated by https://godbolt.org/z/Pe5aE59xG
Fixes #4108

PiperOrigin-RevId: 499556061
Change-Id: I1cb1564f9b77e1825fddc9236965f4a3b661d96a
2023-01-04 12:50:14 -08:00
SunBlack
64e0945546 Fix typos found by codespell 2023-01-04 17:36:11 +01:00
Tom Hughes
3a99ab6d83 Fix _MSC_VER check
Use "#if defined(_MSC_VER)" instead of "#if _MSC_VER" to be consistent with other usages in the file and to work with the "-Wundef" warning.

PiperOrigin-RevId: 499471290
Change-Id: I34a9442eecf266afd74d4332cab7d39766df4ed9
2023-01-04 06:40:48 -08:00
Gonzalo Brito Gadeschi
ab669cad0e Fix warnings with nvc++ as the compiler
Closes #3849.
2022-12-28 06:00:31 -08:00
Abseil Team
71140c3ca7 Use a more recent commit of googletest that uses OS constraints from
@platforms//os:* instead of from @build_tools//platforms:*

See https://github.com/bazelbuild/bazel/issues/8622

Necessary to fix #4096

Also need the fix for #4098

PiperOrigin-RevId: 497182073
Change-Id: Ifd568b088d2f779755dd20264edfd5dad12ca9cc
2022-12-22 09:31:36 -08:00
Abseil Team
5ab508a01f Fix a typo in the documentation for "Using Predicates as Matchers".
PiperOrigin-RevId: 496679950
Change-Id: I2842050902876231d49a142165bcbb88d737505d
2022-12-20 09:26:42 -08:00
Dino Radakovic
b3bfebd796 Comment that q0_ in primer should remain empty
PiperOrigin-RevId: 496642643
Change-Id: I178efeda76cbf46e5f4bb91454c205b9a060a4ea
2022-12-20 06:12:13 -08:00
Abseil Team
a4e0be898b Specify a name for a Property in a code example.
It is good practice to specify a name for the `testing::Property` matcher's use in diagnostics, and we should do so in our examples.

PiperOrigin-RevId: 496406309
Change-Id: Ibb4d1ba63771b5d6855442b91564027cda8ddaca
2022-12-19 08:28:01 -08:00
Abseil Team
3fa7f983c6 Shut up a Clang warning.
Clang warns on this pattern because it looks like the author might
have meant to use the value of the first part of the comma operator,
so it warns that it isn't being used. The cast here signals to Clang
that this behavior is intentional.

This was discovered while updating gmock in Android. Clang's -Wcomma
warning is on by default with either -Wall or -Werror, so users of
gmock with those on in combination with -Werror are unable to build
without this fix.

PiperOrigin-RevId: 495655990
Change-Id: Iaf27e2199669f5b6185a877738234e551b6b6556
2022-12-15 11:50:51 -08:00
Abseil Team
41fe6be7d7 Fix a typo in the gMock sample code for Defining a Custom Matcher Class.
EXPECT_CALL doesn't seem to make much sense here. I think the intent was to use EXPECT_THAT instead.

PiperOrigin-RevId: 495427663
Change-Id: I39a16ea37282729d34017c6bcd331a60cedf1fbe
2022-12-14 15:06:09 -08:00
Derek Mauro
e38ef3be88 Convert feature requests to a form
PiperOrigin-RevId: 494820396
Change-Id: I1aa0a5a0f4796fde8d0424093370fd89ebd2592e
2022-12-12 13:55:56 -08:00
Abseil Team
ad54e90f57 Refactor matrix verification into VerifyMatchMatrix.
PiperOrigin-RevId: 494786543
Change-Id: I7769558dd2ca046d8957bf352dc04cfb48ff7c3a
2022-12-12 11:51:48 -08:00
Abseil Team
b0846aaf37 Introduces a new porting flag (GTEST_HAS_FILE_SYSTEM) to indicate whether a platform supports filesystem operations.
PiperOrigin-RevId: 494751986
Change-Id: I07f73bdf478a73934b8f1a69c1ab4abda1b231ae
2022-12-12 09:34:12 -08:00
Tom Hughes
516940f16d Fall back to the system clock when building with newlib on a system without a monotonic clock.
PiperOrigin-RevId: 493917905
Change-Id: I20137cfcda3671ffc8edcda2b6554aa392e3a00a
2022-12-08 09:34:13 -08:00
Derek Mauro
d454936a0c Migrate GoogleTest to a bug report template and add a link to the discussion
forum for non-bugs

PiperOrigin-RevId: 493632811
Change-Id: I7e02c3c479c2a925b7971f6a55e1e95a5a6f2d0a
2022-12-07 09:56:04 -08:00
Derek Mauro
97459e54ec Remove the unused class TestNameIs
Fixes #4076

PiperOrigin-RevId: 493158910
Change-Id: Id66c0443a6f5f4d167ae39ac79766b32cf95a383
2022-12-05 17:39:39 -08:00
Abseil Team
1f643f71d4 Make SizeIsMatcher::Impl conform to the contract of MatcherDescriberInterface.
MatcherDescriberInterface specifies that DescribeTo "should print a verb phrase", but "size ..." is not a verb phrase. Currently, ElementsAre(SizeIs(9)) is described as "has 1 element that size is equal to 9". With this change, it will be described as "has 1 element that has a size that is equal to 9".

PiperOrigin-RevId: 492022324
Change-Id: I4083335f2419462464957521c1e033643b53b763
2022-11-30 14:42:31 -08:00
Abseil Team
a16bfcfda1 Disables -Wunused-member-function and -Wused-but-marked-unused that trigger via MOCK_METHOD() and EXPECT_THAT() macros.
Fixes: #4052, #4055
PiperOrigin-RevId: 491647393
Change-Id: I8e2ad838156fa8c7e9dccd1740af797e694992b6
2022-11-29 08:44:15 -08:00
Abseil Team
e68764c147 This commit fixes a minor verb conjugation error in gmock_cook_book.md.
PiperOrigin-RevId: 490601453
Change-Id: I733b2ed8740b1c809dddb166a42993b869198469
2022-11-23 15:57:54 -08:00
Copybara-Service
519beb0e52 Merge pull request #4066 from zloylos:doc/make_uniq
PiperOrigin-RevId: 490057649
Change-Id: Ia788d55cfbc576e841064b8e907f8671cc46f3bf
2022-11-21 13:25:15 -08:00
Denis Hananein
834698cc9b Change MakeUnique -> std::make_unique in docs 2022-11-20 15:08:43 +01:00
Abseil Team
9c332145b7 When printing floating-point numbers, print full precision by default.
To make debug output readable, we still use the faster 6-digit precision
sometimes, but only if it will round-trip.

This way, when a test fails due to a very small difference in floating-point
numbers, users will have enough digits to see the difference.

PiperOrigin-RevId: 488958311
Change-Id: Ibcac43f48a97006d89217530c69386cc4fa2735c
2022-11-16 09:18:37 -08:00
Abseil Team
4408a0288b Remove incorrect usage of GTEST_ATTRIBUTE_UNUSED_ on classes.
Fixes: #4054
PiperOrigin-RevId: 488721587
Change-Id: I8742d8475376635c83edcf524796a6107042e89b
2022-11-15 12:01:35 -08:00
Copybara-Service
0e6aac2571 Merge pull request #4058 from zloylos:support-kitty-term
PiperOrigin-RevId: 488463135
Change-Id: I4180d766dabbe438210904e743e6e963122540f5
2022-11-14 14:06:58 -08:00
Copybara-Service
42c6f57f3c Merge pull request #4060 from RerEngineer:main
PiperOrigin-RevId: 488456139
Change-Id: I648f3d2c6affadfea27214a6a22cacc576971cef
2022-11-14 13:40:08 -08:00
RerEngineer
148ab827ca 2022-11-12 15:21:28 +00:00
RerEngineer
9c990a7b1e fixing gcc.gnu domain redirection 2022-11-12 15:12:00 +00:00
Abseil Team
912db74253 Defined a testing::SrcDir() function that returns the name of a directory
where ancillary data files can be found.

PiperOrigin-RevId: 487896836
Change-Id: Ie6b1ba734e900fa33872b63090879ee6efe33411
2022-11-11 12:59:10 -08:00
Denis Hananein
4b7f9453c5 Support kitty TERM
Signed-off-by: Denis Hananein <i@zloylos.me>
2022-11-10 17:08:48 +01:00
Copybara-Service
44c03643cf Merge pull request #4039 from zloylos:fix-return-fail-at-4038
PiperOrigin-RevId: 487516335
Change-Id: Ib475750586fc7e6ab01729f65253e3a86916b994
2022-11-10 06:13:31 -08:00
Abseil Team
6b63c98ac4 Remove incorrect GTEST_ATTRIBUTE_UNUSED_ from InSequence class.
Fixes: #4048
PiperOrigin-RevId: 486951561
Change-Id: I4fae101b5ac5ed4f46c32aba8c36519e1f784db1
2022-11-08 07:58:14 -08:00
Abseil Team
386c7665f5 RecordProperty serializes ints and 64-bit ints, including size_ts
PiperOrigin-RevId: 486685761
Change-Id: I164d2646e65670d341dbf437ee571953c456677a
2022-11-07 09:36:56 -08:00
Abseil Team
a4f02ef389 Fix typo in documentation of ConvertGenerator()
PiperOrigin-RevId: 486316328
Change-Id: I91d5d5ba1aaf4a4ab14019c8963e7fe181722f95
2022-11-05 01:07:38 -07:00
Abseil Team
66366cea56 Add documentation for --gunit_recreate_environments_when_repeating.
PiperOrigin-RevId: 485895339
Change-Id: I09b0f535941531ef7bcb74593d385891d56b3e32
2022-11-03 09:35:31 -07:00
Copybara-Service
3026483ae5 Merge pull request #4041 from zloylos:allow-naming-expectations
PiperOrigin-RevId: 483683590
Change-Id: Id22de3a22018324e5c1e21e262ac5e027a83bf3e
2022-10-25 08:39:19 -07:00
Dino Radakovic
90171d1061 Use git commit hash in CMake quickstart
Commit hashes reflect GoogleTest's live-at-head stance.
Credits to @shinfd.
Fixes #4000

PiperOrigin-RevId: 483655943
Change-Id: Ieeb162859348dbe3657e18f283bac81412f2585d
2022-10-25 06:29:34 -07:00
Abseil Team
03597a01ee Clarify that parameter generator does not evaluate immediately
This aims to avoid confusion as to what kinds of computations are valid inside
a parameter generator expression, calling out flags as a supported use case.

PiperOrigin-RevId: 483397027
Change-Id: I2d036fae95120d617f30a5566ea7498ce1f9bfb6
2022-10-24 09:02:02 -07:00