930 Commits

Author SHA1 Message Date
misterg
2c54f2bb44 Samples changes upstreaming 2017-08-07 13:20:57 -04:00
Herbert Thielen
16e8218b47 add note about different definitions of Test Case
There are contradictory definitions of the term "test case", so prepare
new users in Primer.md to avoid confusion.
2017-08-05 15:12:12 +02:00
Herbert Thielen
8dd8fb0e4a fix small typo in comment 2017-08-05 12:42:00 +02:00
Alex Converse
be0d00e733 Use wider types to prevent unsigned overflow diagnostics
The rest of the (covered) codebase is already integer overflow clean.
This is a cherry-pick of an internal change.

TESTED=gtest_shuffle_test goes from fail to pass with -fsanitize=integer
2017-08-03 14:12:25 -07:00
Gennadiy Civil
04e2d9246e Merge pull request #1030 from vpfautz/master
Fixed some typos
2017-08-03 16:49:13 -04:00
Gennadiy Civil
e51a2f1ab1 Merge pull request #671 from mehagar/patch-1
Fix typo in AdvancedGuide.md
2017-08-02 17:07:27 -04:00
Gennadiy Civil
b3226d86bc Merge pull request #764 from flyd1005/wip-fix-typo
remove duplicated words
2017-08-02 17:04:33 -04:00
Gennadiy Civil
844e7f6bb6 Merge pull request #962 from klimkin/klimkin-patch-typo
Fix a typo
2017-08-02 16:55:50 -04:00
Gennadiy Civil
2386922e9d Merge pull request #968 from nicolacavallini/link_typed_test_docs
added link to sample 6 in the  documentation of typed test
2017-08-02 16:45:13 -04:00
misterg
30ff155152 WIP 2017-08-01 14:36:29 -04:00
Herbert Thielen
a659ce57f6 fix links to Google C++ Style Guide 2017-07-30 17:05:48 +02:00
Herbert Thielen
8c5d6b76b1 remove doc of former versions
The documentation of former versions is available in the history (e.g.
by checking out the appropriate git tags), so there is no need to keep
them in parallel to the current documentation.
2017-07-30 16:26:29 +02:00
Herbert Thielen
e3cd388985 remove obsolete reference to SVN trunk 2017-07-30 16:25:58 +02:00
Gennadiy Civil
ea068d7aa1 Merge pull request #1107 from lipk/patch-1
Minor grammar fix in docs.
2017-07-26 15:29:54 -04:00
Zulkarnine Mahmud
6598cc0499 Remove duplicate code 2017-07-16 21:59:26 +09:00
Zulkarnine Mahmud
6cad33c464 Fix assumption for foreground bit offset 2017-07-15 17:44:18 +09:00
Vincent Palancher
f010e26afe Fixes a typo in FAQ.md 2017-07-05 14:12:58 +02:00
Che-Hsun Liu
02ac7caa50 Update googletest README.md
Use `EXCLUDE_FROM_ALL` in `add_subdirectory` to prevent `make install` from including lots of headers from gtest/gmock.
```
add_subdirectory(${CMAKE_BINARY_DIR}/googletest-src
                 ${CMAKE_BINARY_DIR}/googletest-build
                 EXCLUDE_FROM_ALL)
```
2017-07-02 20:19:03 +08:00
Scott Slack-Smith
e7cd2ad6e7 *Silence false positive memory leaks reported by Microsoft's debug CRT*
Add a new RAII MemoryIsNotDeallocated class that excludes memory allocations from Microsoft’s debug CRT leak detection report.
We use this RAII class to silence 2 false positive leaks that are caused by memory allocations that are intentionally never deallocated.

*Background*
The MS debug CRT has a lightweight memory leak detection mechanism that can only detect if a memory allocation is missing a matching deallocation.
Consequently, it will report a false positive leak for memory that’s intentionally never deallocated. For example, memory that’s reachable for the entire lifetime of a app.
Note the MS debug CRT is always tracking memory allocations but the final memory leak report is disabled by default. As you can’t avoid paying for its cost, you may as well use it.

The memory leak report can be enabled by calling the following function
  #ifdef _MSC_VER
  _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF);
  #endif // _MSC_VER
anywhere before exiting main.

For example, the following are the false positive leaks reported before this change;

Detected memory leaks!
Dumping objects ->
{750} normal block at 0x015DF938, 8 bytes long.
Data: <  ]     > 00 F9 5D 01 00 00 00 00
{749} normal block at 0x015DEE60, 32 bytes long.
Data: <` ] ` ] ` ]     > 60 EE 5D 01 60 EE 5D 01 60 EE 5D 01 01 01 CD CD
{748} normal block at 0x015DF900, 12 bytes long.
Data: <8 ] ` ]     > 38 F9 5D 01 60 EE 5D 01 00 00 00 00
{747} normal block at 0x015DA0F8, 24 bytes long.
Data: <                > FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00
Object dump complete.

As you can see from above it’s not easy to identify the above are false positives. Consequently, if false positive leaks are not fixed or silenced, then it becomes impractical to identify real memory leaks.
2017-06-30 17:12:56 +01:00
Zulkarnine Mahmud
8871cee444 Remove unnecessary const 2017-06-29 09:52:41 +09:00
Zulkarnine Mahmud
9cee7103dd Add helper functions for text color calculation 2017-06-29 09:47:52 +09:00
Billy Donahue
843fe11a0e Merge pull request #1081 from krytarowski/netbsd-1
Add NetBSD support
2017-06-23 19:35:25 -04:00
Zulkarnine Mahmud
43567e466b Fix a problem when bg_color == fg_color
Invert the intensity bit if the background_color == foreground_color
2017-06-22 11:06:17 +09:00
Chris-Sharpe
17c823fe70 Colouring in help text 2017-06-21 16:19:25 +01:00
Zulkarnine Mahmud
01de29ac94 Add background_mask instead of using magic number 2017-06-21 09:17:51 +09:00
Zulkarnine Mahmud
bcedd31f9d Fix background color in ColoredPrintf
Re-use existing background color for Widows' console window.
This fixes a problem where the background color for ColoredPrintf would be BLACK even if the user's console is using a different BG color.
2017-06-20 15:40:53 +09:00
Tanzinul Islam
ec0965c5f2 Allow death test child to bypass WER under MinGW
The mechanics of suppressing debugger trapping and Windows Error Reporting for the crashed child process in a death test are currently guarded under the `GTEST_HAS_SEH` macro. This seems unnecessary, as the logic does not call any APIs related to Structured Error Handling.

Replace the guarding macro with the more permissive `GTEST_OS_WINDOWS`, so that Windows toolchains without SEH support (e.g. MinGW) can benefit from it.

Fixes: #1116
2017-06-19 03:12:42 +01:00
Billy Donahue
b73cfb5887 Create gtest-internal.h 2017-06-11 18:34:04 -04:00
jorgehb
db948d695a Fixing float comparison broken link
Updating the link with a valid one. The old one was considered obsolete by the publisher.
2017-06-08 10:01:55 -04:00
lipk
ff0be060c1 Remove unnecessary 'the'. 2017-05-30 17:29:32 +02:00
Billy Donahue
5fd8b4782a Merge pull request #1091 from nico/wmicro
Fix -Wmicrosoft-cast warnings when using gtest with clang on Windows.
2017-05-23 11:10:42 -04:00
Gennadiy Civil
73a155fe54 Changes add ability to overwrite TempDir(), issue https://github.com/google/googletest/issues/1093 2017-05-18 10:19:28 -04:00
Billy Donahue
8afd5d19be Merge pull request #1089 from nico/stdstring
Use std::string and ::string explicitly in gtest and gmock code.
2017-05-16 17:00:03 -04:00
Billy Donahue
a1f6b6cdab Merge pull request #1090 from nico/typo
Fixing typo in documentation.
2017-05-15 23:54:23 -04:00
Nico Weber
9ea4f468e5 Gender-neutralize comments in gtest.h.
This merges a Google-internal change.
2017-05-15 18:00:29 -04:00
Nico Weber
3ec8d72fc1 Use std::string and ::string explicitly in gtest and gmock code.
This merges a Google-internal change (117235625).

Original CL description:
This CL was created manually in about an hour with sed, a Python script
to find all the places unqualified 'string' was mentioned, and some help
from Emacs to add the "std::" qualifications, plus a few manual tweaks.
2017-05-15 17:53:04 -04:00
Nico Weber
62d2a519ed Fix -Wmicrosoft-cast warnings when using gtest with clang on Windows.
This upstreams a Google-internal change.

Original CL description:
The C++ standard says that function pointers are not implicitly
convertible to object pointers. Visual Studio disregards that and allows
implicit conversion between function pointers and object points, and
enough code relies on this that clang follows suit in
Microsoft-compatibility mode.

However, clang emits a -Wmicrosoft-cast warning when such a conversion
is done:

E:\b\c\b\win_clang\src\sandbox\win\src\sync_dispatcher.cc(42,7):
    warning: implicit conversion between pointer-to-function and
             pointer-to-object is a Microsoft extension [-Wmicrosoft-cast]

This change fixes this warning in gtest, while hopefully not changing
any behavior. The change does two things:

1. It replaces the if in DefaultPrintTo with SFINAE
2. In C++11 mode, it uses enable_if<is_function<>> instead of
   ImplicitlyConvertible<T*, const void*> to check if the
   explicit cast is needed.

With this change, functions will use the branch with the reintpret_casts
with Visual Studio and clang/win, and clang no longer needs to warn
that it implicitly converts a function pointer to a void pointer.
2017-05-15 17:21:25 -04:00
Nico Weber
8fc77c3504 Fixing typo in documentation.
This upstreams a Google-internal change.
2017-05-15 17:12:19 -04:00
Billy Donahue
5f11a1cfd6 Merge pull request #725 from donhuff/xcode-headers
Add missing headers to Xcode framework target.
2017-05-15 11:44:37 -04:00
Billy Donahue
7927e99b3e Merge pull request #1078 from pwnall/gtest_api_port
Pick up GTEST_API_ definition in gtest/internal/custom/gtest-port.h.
2017-05-10 22:10:01 -04:00
Billy Donahue
8005a0be06 Merge pull request #965 from davidben/format-attr
Annotate ColoredPrintf with the format attribute and fix bugs.
2017-05-07 01:07:16 -04:00
Kamil Rytarowski
76042375b1 Add NetBSD support
NetBSD is a modern UNIX-like Operating System.

Enable GTEST_HAS_PTHREAD and GTEST_HAS_DEATH_TEST on NetBSD.
2017-05-06 04:18:58 +02:00
Victor Costan
ca56e42c44 Pick up GTEST_API_ definition in gtest/internal/custom/gtest-port.h.
This makes it possible for a port to define the specifier used for
exported symbols without having to change Google Test.
2017-05-04 10:19:47 -07:00
Billy Donahue
c374b339d5 Merge pull request #1034 from dankegel/master
Minimal changes to fix build failures on Microsoft Visual Studio 2015
2017-05-02 14:53:21 -04:00
Gennadiy Civil
a446e0fbe1 Changes to make TempDir() public
Fixes #1076.
2017-05-02 14:16:11 -04:00
Claus Stovgaard
823ebf48d2 Merge remote-tracking branch 'github_google/master' into master-github_frosteyes 2017-04-05 10:18:07 +02:00
Dan Kegel
1f92ec6cfd Minimal changes to fix build failures on Microsoft Visual Studio 2015
Fixes the following errors:

hash_map(17): error C2338: <hash_map> is deprecated and will be REMOVED. Please use <unordered_map>. You can define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS to acknowledge that you have received this warning. [googlemock\gtest\gtest-printers_test.vcxproj]
hash_set(17): error C2338: <hash_set> is deprecated and will be REMOVED. Please use <unordered_set>. You can define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS to acknowledge that you have received this warning. [googlemock\gtest\gtest-printers_test.vcxproj]
googletest\test\gtest_catch_exceptions_test_.cc(152): error C2220: warning treated as error - no 'object' file generated
googletest\test\gtest_catch_exceptions_test_.cc(152): warning C4297: 'CxxExceptionInDestructorTest::~CxxExceptionInDestructorTest': function assumed not to throw an exception but does
  googletest\test\gtest_catch_exceptions_test_.cc(152): note: destructor or deallocator has a (possibly implicit) non-throwing exception specification

There were already some checks for _MSC_VER in the code, so this commit
continues in that vein.
2017-03-01 18:40:48 -08:00
vpfautz
82ed7f8716 Fixed some typos 2017-02-26 19:15:33 +01:00
Olivier Clavel
cf2860ebdc Wrong version reported (1.7.0 should be 1.8.0)
`gtest-config --version` reports wrong version.

Made against master branch but please note that this affects tag release-1.8.0 and the distribution tarballs.
2017-02-13 14:59:00 +01:00
srz_zumix
beedbbea89 fix typo /GTEST_ATTRIBUTE_UNUSED/GTEST_ATTRIBUTE_UNUSED_/ 2017-02-03 08:05:22 +09:00