4166 Commits

Author SHA1 Message Date
dmauro
7e7e94429d Googletest export
Stop using master.zip to make the build reproducible

PiperOrigin-RevId: 337102716
2020-10-14 18:26:49 -04:00
Abseil Team
8ccc5ec5c0 Googletest export
Removing a semicolon that triggers a lint error in sample code.

PiperOrigin-RevId: 337095451
2020-10-14 18:26:41 -04:00
dmauro
79dc0f231a Googletest export
Disable -Wmismatched-tags warning for struct/class tuple_size

PiperOrigin-RevId: 337087493
2020-10-14 18:26:32 -04:00
Abseil Team
b2cb220eb7 Googletest export
Prefer using over typedef.

PiperOrigin-RevId: 337080404
2020-10-14 18:26:24 -04:00
dmauro
fb239f0e4c Googletest export
Fix -Wmismatched-tags error with struct tuple_size vs class tuple_size

PiperOrigin-RevId: 336930166
2020-10-14 18:26:15 -04:00
dmauro
b55f834c57 Googletest export
Fixes AppVeyor by upgrading to Bazel 3.6.0

PiperOrigin-RevId: 336887434
2020-10-14 18:26:06 -04:00
Derek Mauro
6abcfac2f2 Merge pull request #3050 from peternewman:patch-1
PiperOrigin-RevId: 336881266
2020-10-14 18:25:57 -04:00
Abseil Team
d4df326d6f Googletest export
Use absl::StrCat in MATCHER_P example for consistency with https://abseil.io/tips/3

PiperOrigin-RevId: 336878481
2020-10-14 18:25:49 -04:00
Abseil Team
d11c76175f Googletest export
Suggest using generic lambdas for composing macros.

Long chains of macros hurt legibility; generic lambdas are an easy way to abbreviate them, but are not an obvious solution to casual users.

Compare:
EXPECT_THAT(f(), ElementsAre(
    Property(&MyClass::foo, Property(&OtherClass::bar, Contains("x"))),
    Property(&MyClass::foo, Property(&OtherClass::bar, Contains("y"))));
to:
EXPECT_THAT(f(), ElementsAre(HasFooBar("x"), HasFooBar("y")));
PiperOrigin-RevId: 336870137
2020-10-14 18:25:40 -04:00
ofats
2cf1f99b97 Googletest export
Add helper methos to internal FlatTuple. Refactor constructors.

PiperOrigin-RevId: 336306681
2020-10-14 18:25:32 -04:00
Abseil Team
0555b0eacb Googletest export
Improve lookup of operator<< for user types

Without this fix, trying to use this class with googletest

  struct Foo {};

  template <typename OutputStream>
  OutputStream& operator<<(OutputStream& os, const Foo&) {
    os << "TemplatedStreamableInFoo";
    return os;
  }

results in an ambiguity error between the class' operator<< and the
operator<< in gtest-printers.h removed in this CL.

This fix also enables implicit conversions to happen, so that e.g.
we will find the base class operator<< if a subclass has no
operator<< of its own.

PiperOrigin-RevId: 336261221
2020-10-14 18:25:23 -04:00
Abseil Team
72512aa893 Googletest export
Make the code Python3 compliant.

PiperOrigin-RevId: 336144198
2020-10-14 18:25:14 -04:00
Derek Mauro
4abb012c70 Merge pull request #2837 from inazarenko:duck_type_protos
PiperOrigin-RevId: 336087297
2020-10-14 18:25:04 -04:00
Peter Newman
870a6b5563
Fix a typo 2020-10-12 06:23:18 +01:00
Ruslan Manaev
113ca75c30 Improve FilePath::Normalize method 2020-10-07 23:39:50 +05:00
Mark Barolak
07f4869221 Merge pull request #3030 from ranodeepbanerjee:patch-1
PiperOrigin-RevId: 335653055
2020-10-07 10:44:51 -04:00
Aralox
ee66065bc5 Issue 2135: Change template args in NiceMock, NaggyMock and StrictMock from A1, A2, ... to TArg1, TArg2,... to avoid clash with legacy header files 2020-10-07 18:27:41 +11:00
Abseil Team
1fb1bb23bb Googletest export
Update faq.md on underscore to mention `DISABLED_` prefix.

PiperOrigin-RevId: 334507963
2020-09-30 20:52:45 -04:00
ranodeepbanerjee
ed17c8cccb
A slight Gramatical change. 2020-10-01 01:57:27 +05:30
dmauro
477998eefa Googletest export
Fix undefined pointer comparison

PiperOrigin-RevId: 334436975
2020-09-29 20:48:11 -04:00
Abseil Team
2ff8d94d0e Googletest export
Update comment to suggest using SetUpTestSuite and TearDownTestSuite.

PiperOrigin-RevId: 334430329
2020-09-29 20:48:03 -04:00
Andy Getz
a0cbbba131 Merge pull request #3024 from Thomas-Barbier-1A:fix_warning_maybe_unintialized
PiperOrigin-RevId: 334391149
2020-09-29 20:47:54 -04:00
Andy Getz
f278076efe Merge pull request #3027 from keshavgbpecdelhi:patch-2
PiperOrigin-RevId: 334384310
2020-09-29 20:47:44 -04:00
Abseil Team
705b9c1af2 Googletest export
Fix typo

PiperOrigin-RevId: 333745750
2020-09-28 23:48:26 -04:00
keshavgbpecdelhi
1f3484a2b7
Update cook_book.md
Please note that changing the default value for a type can make [you]* test.....
Here "you" word doesn't make sense.. rather "your" seems to make it understandable.
2020-09-27 15:27:14 +05:30
Abseil Team
fe4d5f1084 Googletest export
Revision of recent DoubleNearPredFormat change to support more toolchains.

isnan() is a macro in C99, and std::isnan() is a function in C++11.  The previous change used `isnan` directly, and broke some tests in open source.

This CL changes it to follow the practice in gmock-matchers.h, and spell uses of isnan as
  (std::isnan)(f)
.  The parens around `std::isnan` prevent it from being recognized as a macro in the preprocessor.

PiperOrigin-RevId: 333374377
2020-09-24 12:06:42 -04:00
Abseil Team
df94fc5f7e Googletest export
Address OSS Issue #2463 https://github.com/google/googletest/issues/2463

PiperOrigin-RevId: 333289989
2020-09-24 12:06:34 -04:00
vslashg
634c52d99c Merge pull request #3014 from JethroSama:patch-1
PiperOrigin-RevId: 333288626
2020-09-24 12:06:25 -04:00
Abseil Team
b5687db554 Googletest export
Improve DoubleNearPredFormat output on bad epsilons

DoubleNearPredFormat will happily accept epsilon values (abs_error) that
are so small that they are meaningless. This turns EXPECT_NEAR into a
complicated and non-obvious version of EXPECT_EQ.

This change modifies DoubleNearPredFormat) so that when there is a
failure it calculates the smallest meaningful epsilon value, given the
input values, and then prints a message which explains what happened.

If a true equality test is wanted either pass a literal 0.0 as abs_error
or use EXPECT_EQ. If a check for being almost equal is wanted consider
using EXPECT_DOUBLE_EQ which, contrary to its name, verifies that the
two numbers are *almost* equal (within four ULPs).

With this change the flaky test mentioned in crbug.com/786046 gives this
output:

The difference between 4.2934311416234112e+18 and 4.2934311416234107e+18 is 512, where
4.2934311416234112e+18 evaluates to 4.2934311416234112e+18,
4.2934311416234107e+18 evaluates to 4.2934311416234107e+18.
The abs_error parameter 1.0 evaluates to 1 which is smaller than the minimum distance between doubles for numbers of this magnitude which is 512, thus making this EXPECT_NEAR check equivalent to EXPECT_EQUAL. Consider using EXPECT_DOUBLE_EQ instead.

Tested:
I confirmed that this change detects the bad epsilon value that caused
crbug.com/786046 in Chromium and added a test for the desired output.
PiperOrigin-RevId: 332946880
2020-09-24 12:06:16 -04:00
tbarbier
4679637f1c Fix warning maybe-uninitialized 2020-09-24 16:51:06 +02:00
Abseil Team
7aca84427f Googletest export
Simplify FooConcrete static calls in googlemock cookbook.

PiperOrigin-RevId: 332437041
2020-09-20 18:48:41 -04:00
Abseil Team
bb2725346d Googletest export
Reduce the demangled name bloat of the Action constructor.

PiperOrigin-RevId: 332234887
2020-09-20 18:48:32 -04:00
JethroSama
4181d7a161
Update README.md, added missing 'a' 2020-09-18 09:56:59 +08:00
Hyuk Myeong
242ee2720c Remove spaces between Google Test and Google Mock 2020-09-16 01:33:41 +09:00
Hyuk Myeong
5afcb3ca4d Add follow-up patch for more natural reading 2020-09-15 21:31:07 +09:00
Hyuk Myeong
2d1a18ff3a Apply the reviewed comment 2020-09-15 21:15:43 +09:00
Hyuk Myeong
32437f41ec Remove a space 2020-09-15 02:30:34 +09:00
Hyuk Myeong
7aae2ac34c Improve the tutorial that may be confusing 2020-09-15 02:18:53 +09:00
Abseil Team
a4ab0abb93 Googletest export
Mark ACTION_Pn()-generated functions as must-use-result.

This catches when a client creates an action and discards it, thinking that the action has actually been applied to something.

This will help people who make the mistake of defining, for example, both `void Use(Foo*)` and `ACTION(Use) { Use(arg); }` for later application to a Foo.  With such an overload, a client may then write `Use();`, forgetting the param and being confused why nothing happens.

This also catches when a client defines their own action in terms of an ACTION()-generated one, invokes the ACTION's builder, and then fails to invoke the resulting action, thinking it's operating on the outer action's parameters.

PiperOrigin-RevId: 330614454
2020-09-10 19:09:30 -04:00
Derek Mauro
646603961b Merge pull request #2994 from xerus2000:gmock-docs
PiperOrigin-RevId: 330545489
2020-09-10 19:09:21 -04:00
dmauro
5f8fcf4aa8 Googletest export
Implements GetTimeInMillis() using std::chrono for portability
Fixes #2995

PiperOrigin-RevId: 329709958
2020-09-08 12:41:46 -04:00
Abseil Team
7b1cf6dd5f Googletest export
gtest.cc: make ColoredPrintf static

the prototype was removed from gtest.h in cl/301446904; quiets a
-Wmissing-declarations warning

PiperOrigin-RevId: 329569020
2020-09-01 16:53:45 -04:00
Abseil Team
af1e75ce0b Googletest export
Add millisecond precision to start timestamp in XML/JSON output

- Previous timestamp had format YYYY-MM-DDThh:mm:ss, now YYYY-MM-DDThh:mm:ss.sss
- This conforms to the ISO 8601 standard

PiperOrigin-RevId: 329503623
2020-09-01 16:53:36 -04:00
Abseil Team
df6b75949b Googletest export
Replace uses of ACTION_TEMPLATE and ACTION_P with manually written functors.
The latter provide better error diagnostics.
This fixes https://github.com/google/googletest/issues/2729.

PiperOrigin-RevId: 328573022
2020-08-26 21:23:05 -04:00
xerus2000
296c9d29b1 Add timestamp to in old method mock macro guide 2020-08-25 10:07:30 +02:00
vslashg
1e315c5b1a Merge pull request #2895 from lantw44:wip/lantw/Avoid-using-environ-on-FreeBSD
PiperOrigin-RevId: 327799934
2020-08-23 23:51:30 -04:00
Abseil Team
ec9be15bf8 Googletest export
Workaround static assert in early versions libc++

The error is "Attempted to construct a reference element in a tuple with an
rvalue". We can fix this by putting everything into a non temporary tuple_args
and implitly convert to the other tuple types. This avoids binding an rvalue
reference to an lvalue reference inside the tuple.

PiperOrigin-RevId: 327624990
2020-08-23 23:51:21 -04:00
vslashg
655bff5d38 Merge pull request #2984 from earhart:master
PiperOrigin-RevId: 327324992
2020-08-23 23:51:12 -04:00
vslashg
aa4cbcdcbd Merge pull request #2904 from AmatanHead:throw-matchers
PiperOrigin-RevId: 327294137
2020-08-23 23:51:02 -04:00
Abseil Team
fc1e778899 Googletest export
Fix DoAll to work with move-only sink arguments.

This changes types of the first n - 1 actions so that they only get a readonly
view of the arguments. The last action will accept move only objects.

PiperOrigin-RevId: 327031893
2020-08-23 23:50:54 -04:00
krzysio
adeef19294 Googletest export
Mention matchers as an alternative to assertions in subroutines.

Matchers are often the better choice - they can provide more informative error messages and circumvent all of the complexity described in this section.

PiperOrigin-RevId: 326332149
2020-08-14 03:16:24 -04:00
Rob Earhart
025e1a484d
Export LICENSE
This makes it easier to include the license in redistributions, as required by the license.
2020-08-12 16:10:57 -07:00
Abseil Team
10ade8473b Googletest export
internal change

PiperOrigin-RevId: 326080000
2020-08-12 02:41:20 -04:00
dmauro
6c655699c4 Googletest export
Remove references to the GoogleTest mailing list
Fixes #2966

PiperOrigin-RevId: 326065972
2020-08-12 02:41:11 -04:00
Abseil Team
3d93f88081 Googletest export
internal change

PiperOrigin-RevId: 325799949
2020-08-12 02:41:02 -04:00
Derek Mauro
3af06fe166 Merge pull request #2961 from FranciscoThiesen:patch-1
PiperOrigin-RevId: 325429245
2020-08-07 13:08:27 -04:00
Derek Mauro
ce654c2ff5 Merge pull request #2972 from srz-zumix:fix/remove_legacy_testcase_api_
PiperOrigin-RevId: 325220934
2020-08-07 13:08:18 -04:00
Abseil Team
d0de618a58 Googletest export
Fixing exception-safety bug in googletest. Previously, if an exception was
thrown during a call to a mock that would have triggered an error, the error
was discarded.

Fixes #2890

PiperOrigin-RevId: 325017806
2020-08-07 13:08:09 -04:00
Abseil Team
5a5caab358 Googletest export
Fix DoAll to work with move-only sink arguments.

This changes types of the first n - 1 actions so that they only get a readonly
view of the arguments. The last action will accept move only objects.

PiperOrigin-RevId: 324619666
2020-08-07 13:08:00 -04:00
Abseil Team
48ec64092a Googletest export
Fix DoAll to work with move-only sink arguments.

This changes types of the first n - 1 actions so that they only get a readonly
view of the arguments. The last action will accept move only objects.

PiperOrigin-RevId: 324600664
2020-08-07 13:07:51 -04:00
srz_zumix
b612003c38 fix endif comment 2020-08-05 22:54:50 +09:00
Vladimir Goncharov
7f1c8bb447 Remove ThrowsMessageHasSubstr and fix some nits after review 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
a899cecb11 Cleanup a bulky expression, document implementation details 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
4ebbfea623 Fix build under msvc 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
c46bdea43a Update tests after changing an error message 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
0a80845e73 Fix build under msvc 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
92d0a6f7e2 Add a test to ensure that the Throws matcher only invokes its argument once. 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
69c510fb51 Add a test for duplicate catch clauses in throw matchers, fix a couple of nitpicks. 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
49d1201a7e Add missing documentation piece 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
46734d9a66 Small improvements: code style and property name 2020-08-03 23:47:57 +03:00
Vladimir Goncharov
9ac4cd0f49 Add matchers for testing exception properties
This PR adds matchers that accept a callable and verify that when invoked, it throws an exception with the given type and properties.

Fixes #952
2020-08-03 23:47:57 +03:00
srz_zumix
7d47077245 fix tests 2020-08-02 09:18:13 +09:00
Mark Barolak
e6e2d3b761 Merge pull request #2952 from jasjuang:master
PiperOrigin-RevId: 324016198
2020-07-31 14:51:45 -04:00
Mark Barolak
e61125f053 Merge pull request #2920 from ongjunjie:fix-death-test-regex
PiperOrigin-RevId: 324014547
2020-07-31 14:51:35 -04:00
Francisco Geiman Thiesen
7b2f00d9df
Removing tiny-dnn from "Who is using.."
The tiny-dnn project has changed the test framework (d0d35ca2f4) and removed the googletest usage.

Removing it from the "Who is Using Google Test?" list so as to keep it accurate.
2020-07-29 21:00:25 -03:00
Abseil Team
68ca04c261 Googletest export
Updated documentation for Value-Parameterized Tests: Per-default, a TEST_P without a corresponding INSTANTIATE_TEST_SUITE_P now causes a failing test.

PiperOrigin-RevId: 323622468
2020-07-29 15:48:29 -04:00
srz_zumix
317ec2f296 fix GTEST_REMOVE_LEGACY_TEST_CASEAPI_ typo 2020-07-29 07:42:58 +09:00
Abseil Team
18a9aeda7a Googletest export
Internal documentation change.

PiperOrigin-RevId: 323612305
2020-07-28 14:22:08 -04:00
ofats
c64309924d Googletest export
Stop using ADL for InvokeArgument action.

PiperOrigin-RevId: 323234396
2020-07-28 14:21:59 -04:00
jasjuang
7bde252cb7 fix clang tidy modernize-use-equals-default warnings 2020-07-19 15:18:22 -07:00
vslashg
a781fe29bc Merge pull request #2937 from Ashikpaul:patch-1
PiperOrigin-RevId: 321178217
2020-07-15 14:09:43 -04:00
ofats
eb660507ff Googletest export
Move matchers' tests from *generated* to common files.

PiperOrigin-RevId: 320954068
2020-07-15 14:09:29 -04:00
vslashg
af287b4ffd Merge pull request #2903 from AmatanHead:informative-exception-asserts
PiperOrigin-RevId: 320425648
2020-07-15 14:09:20 -04:00
Ashik Paul
c4a5ee3ac0
Fixed some minor typos 2020-07-11 12:13:05 +05:30
Abseil Team
70b90929b1 Googletest export
Adding std:: namespace to string in the example

PiperOrigin-RevId: 320327910
2020-07-09 13:35:53 -04:00
Gennadiy Rozental
c7f05e08af Merge pull request #2872 from elindsey:master
PiperOrigin-RevId: 320224740
2020-07-09 13:35:44 -04:00
Gennadiy Rozental
592d464243 Merge pull request #2808 from OlivierLDff:cmake-cpp11-feature
PiperOrigin-RevId: 320222294
2020-07-09 13:35:36 -04:00
Gennadiy Rozental
017c8d56ba Merge pull request #2682 from mjvankampen:cmake-QNX-fix
PiperOrigin-RevId: 320191208
2020-07-09 13:35:27 -04:00
ofats
08b787796c Googletest export
Replace ByRef with std::ref everywhere in docs.

PiperOrigin-RevId: 320002303
2020-07-09 13:35:18 -04:00
Abseil Team
9aaaaf3f3d Googletest export
Cleanup: Error message grammar fix.
PiperOrigin-RevId: 319992912
2020-07-09 13:35:10 -04:00
Abseil Team
b9a8afcf2e Googletest export
Fix mismatch between `int` and `int32_t` in the parse function.
On some platforms, those are different types.

PiperOrigin-RevId: 319991862
2020-07-09 13:35:01 -04:00
Abseil Team
356f2d264a Googletest export
Improve compatibility with strict compilers targeting Windows

Remove an unnecessary ##, which could result in warnings about invalid preprocessor tokens when pasting to an initial '('

PiperOrigin-RevId: 319277617
2020-07-05 16:25:43 -04:00
Olivier Ldff
131878ce9e use target_compile_features to use c++11 if cmake > 3.8
If target_compile_features is available and cxx_std_11.
This fix compilation with clang and gcc when c++11 isn't specified by user.
2020-07-02 09:36:22 +02:00
Jun Jie
5c0ef1cb84 Fix test failing when simple regex is used
Test MatcherDeathTest.DoesNotBreakBareRegexMatching fails when
googletest uses simple regex instead of posix regex.

This partially fixes #2687
2020-07-02 13:33:56 +08:00
Abseil Team
aee0f9d9b5 Googletest export
Add Bazel build rules for gtest_list_output_unittest.py and correct some off-by-one line number expectations.

PiperOrigin-RevId: 318466071
2020-06-26 12:04:14 -04:00
Abseil Team
e5613588a1 Googletest export
Normalize headers in gMock docs

Increasing Header levels on two pages, to better match other pages in the same directory.

PiperOrigin-RevId: 318280892
2020-06-26 12:04:05 -04:00
Abseil Team
05c4a036bb Googletest export
Update auto_mock to support C++17 nested namespaces

PiperOrigin-RevId: 318192214
2020-06-26 12:03:55 -04:00
Mark Barolak
849ed6b172 Merge pull request #2902 from mshingote:master
PiperOrigin-RevId: 318147761
2020-06-26 12:03:46 -04:00
Abseil Team
a4007e944f Googletest export
Make sure sanitizers do not tamper with the stack here in StackLowerThanAddress().

PiperOrigin-RevId: 318082465
2020-06-26 12:03:36 -04:00
Mark Barolak
5e0cf72b7c Merge pull request #2718 from NINI1988:master
PiperOrigin-RevId: 317696457
2020-06-26 12:03:26 -04:00