3145 Commits

Author SHA1 Message Date
Hugo Lindström
718bb65acf Avoid dynamic/static runtime linking (LNK4098) by properly replacing MD(d)->MT(d) in both C and CXX flags, resolves 2074 2019-01-28 21:07:41 +01:00
Gennadiy Civil
5ec7f0c4a1 Merge pull request #2079 from acozzette:fix-dist
PiperOrigin-RevId: 230902623
2019-01-25 11:01:36 -05:00
Adam Cozzette
46b81732b6 Fixed "make dist"
I made a few updates to the Makefile.am files so that "make dist"
succeeds and produces a usable tarball. We need this for protobuf
because the protobuf tarballs include a bundled copy of googletest.
2019-01-24 14:51:40 -08:00
Gennadiy Civil
bf07131c1d Merge pull request #2041 from ciband:chore/fix_library_json
PiperOrigin-RevId: 230554814
2019-01-23 13:27:16 -05:00
Abseil Team
fdc59ffd05 Googletest export
Add AllOfArray matcher that verifies a value matches all member of some array/container/list/set/..., e.g:
EXPECT_THAT(1, AnyOfArray({1, 2, 3}))
In the simplest form this is identical to AnyOf(1, 2, 3). But unlike that one it works on containers.

Add AnyOfArray matcher that verifies a value matches any member of some
array/container/list/set/...

PiperOrigin-RevId: 230403653
2019-01-23 13:27:08 -05:00
Abseil Team
569fba4d74 Googletest export
Make internal FunctionMocker class final

PiperOrigin-RevId: 230332778
2019-01-22 13:12:13 -05:00
Pavel Samolysov
91bfc08228 Enable CI on Windows (appveyor) with Bazel
Signed-off-by: Pavel Samolysov <samolisov@gmail.com>
2019-01-22 12:28:09 +03:00
Abseil Team
9518a57428 Googletest export
Fix mocking method arguments with templated copy constructors.

A previous change removed workarounds for old compilers from googletest and googlemock. Unfortunately, a bit of code that started as a workaround for Symbian's C++ compiler is still needed to avoid copy/move constructor ambiguity when mocking functions with certain argument types.

The test case added by this CL is extracted from Chrome's codebase, and was discovered while attempting to roll googletest.

PiperOrigin-RevId: 229801765
2019-01-18 14:06:03 -05:00
Ayaz Salikhov
7c4164bf40 Fix INSTANTIATE_TEST_CASE_P with zero variadic arguments 2019-01-18 14:53:56 +03:00
Abseil Team
0adeadd283 Googletest export
Refactor the `Invoke` and `InvokeWithoutArgs` actions:
 - Replace pump'd classes and functions with templates.
 - Make the polymorphic actions be polymorphic functors instead.
 - Fix Invoke(Callback*) to work with subclasses of the callbacks, instead of trying to diagnose that in gmock_doctor.

PiperOrigin-RevId: 229604112
2019-01-17 14:41:08 -05:00
misterg
eb9225ce36 Googletest export
Change remaining samples to use new Test Suite API

PiperOrigin-RevId: 229231566
2019-01-14 17:02:11 -05:00
Abseil Team
9acd065a90 Googletest export
Add move-only argument support to almost all remaining matchers.

PiperOrigin-RevId: 229030728
2019-01-14 17:02:03 -05:00
Abseil Team
097407fd3c Googletest export
Deduplicate testing::ReferenceWrapper with std::reference_wrapper.
Minor cleanups in matchers_test.

PiperOrigin-RevId: 229022872
2019-01-14 17:01:56 -05:00
Pavel Samolysov
c868da1988 Enable building as a shared library (dll) on Windows with Bazel
While the google test library is being built as a shared library using Bazel,
so that there is a rule like

cc_test(
     name = "iterator_traits_test",
     linkstatic = 0,
     deps = ["@gtest//:gtest_main"],
     ...
)

in a BUILD file, the following error appears on Windows:

INFO: Found 1 test target...
ERROR: C:/../external/gtest/BUILD.bazel:55:1: output 'external/gtest/gtest.if.lib' was not created
ERROR: C:/../external/gtest/BUILD.bazel:55:1: not all outputs were created or valid
Target //test:iterator_traits_test failed to build

The reason is a missing "win_def_file" attribute of the "gtest" and
"gtest_main" rules in the BUILD.bazel inside the google test library
package.

The "windows_export_all_symbols" feature is added to the rules, this
feature forces Bazel to export all symbols from the google test library
to linker. I believe exporting all symbols from a testing library makes
no problem for the application from a point of view on encapsulation.

Signed-off-by: Pavel Samolysov <samolisov@gmail.com>
2019-01-14 16:20:56 +03:00
misterg
0599a7b841 Googletest export
Change tests to use new Test Suite API

PiperOrigin-RevId: 228908894
2019-01-11 13:59:22 -05:00
Gennadiy Civil
2edadcedf3
Workaround homebrew issue 2019-01-10 18:20:44 -05:00
Gennadiy Civil
6693e85b04 Merge branch 'master' of github.com:google/googletest 2019-01-10 16:33:42 -05:00
Abseil Team
bc1023b413 Googletest export
Fix warning about deprecation of implicit operations such as copy constructors or assignment operators.

Specifically:

MatcherBase's default copy constructor, assignment operator, move operator, and move assignment operator are now declared explicitly rather than depending on the compiler implicit generation (which is disallowed/warned against due to MatcherBase's declaration of the destructor).

PiperOrigin-RevId: 228573333
2019-01-10 16:32:37 -05:00
Abseil Team
7a7e2bba1d Googletest export
...text exposed to GitHub repo https://www.github.com/google/googletest

PiperOrigin-RevId: 228573333
2019-01-10 16:18:48 -05:00
gennadiycivil
50f1a77955 Merge pull request #2051 from enptfb55:master
PiperOrigin-RevId: 228337465
2019-01-08 11:51:17 -05:00
misterg
f31bf1d362 Googletest export
Replace testing::internal::ImplicitlyConvertible with std::is_convertible
Fixes #2054

PiperOrigin-RevId: 228334305
2019-01-08 11:51:05 -05:00
Abseil Team
216c37f057 Googletest export
Drop generated file gmock-generated-internal-utils.h.

PiperOrigin-RevId: 228232195
2019-01-08 11:50:56 -05:00
Chris
45c58aa6f3 fix: Add Arduino setup()/loop() functions back
Added setup()/loop() functions back to *_main.cc files to support compiling in CI.  Future features could enable this for the end user.
2019-01-07 12:37:34 -06:00
gennadiycivil
644319b9f0 Merge pull request #2048 from ciband:chore/clang_tidy
PiperOrigin-RevId: 228173023
2019-01-07 12:09:34 -05:00
Abseil Team
b6cd405286 Googletest export
Fix GTEST_IS_NULL_LITERAL_ for types that have magic implicit conversions.

PiperOrigin-RevId: 227879345
2019-01-07 12:09:25 -05:00
Sal Amato
8369b5bbd0 fixing build errors for unused parameter 2019-01-06 06:24:26 -05:00
Chris
ade8baa7d2 clang-tidy: modernize-deprecated-headers 2019-01-05 11:21:56 -06:00
Chris
23e6937873 misc: Reapply Arduino functions 2019-01-03 21:23:06 -06:00
Chris
202dcabf39 misc: Revert formatting changes. 2019-01-03 21:22:00 -06:00
Chris
fd1c7976ae Merge branch 'chore/fix_library_json' of https://github.com/ciband/googletest into chore/fix_library_json 2019-01-03 21:15:19 -06:00
Chris Johnson
0ffa5f9779
Merge branch 'master' into chore/fix_library_json 2019-01-03 21:13:20 -06:00
Chris
23533009b8 chore: Add Windows cmake files to .gitignore 2019-01-03 21:06:20 -06:00
Chris
adc5045cbf chore: Alphabetize exclude directories. 2019-01-03 21:01:02 -06:00
Gennadiy Civil
3880b13e4c
Merge pull request #2042 from gennadiycivil/master
Update Docs TestCase->TestSuite
2019-01-03 21:36:19 -05:00
Gennadiy Civil
58e62f7a98 Merge branch 'master' of https://github.com/google/googletest 2019-01-03 17:18:32 -05:00
Gennadiy Civil
5d3a2cd9c8 Update docs, TestCase->TestSuite 2019-01-03 17:18:03 -05:00
misterg
827515f8a0 Googletest export
Fixes #1261

PiperOrigin-RevId: 227740670
2019-01-03 16:40:27 -05:00
misterg
3a460a26b7 Googletest export
TestCase->TestSuite refactoring

PiperOrigin-RevId: 227702164
2019-01-03 16:40:20 -05:00
Chris
0c0ca90382 fix: Correct *_main.cc paths 2019-01-03 12:14:40 -06:00
Chris
4d62b5b9ae fix: Remove Arduino entry points
Improved flexibility by removing the Arduino entry points in favor of manual calls to setup/loop that the user can call from their entry point.  This is the more common use case for Arudino.

Also added the gtest/gmock_main files to the PlatformIO ignore list since we are not supporting that feature.
2019-01-03 12:12:19 -06:00
Gennadiy Civil
ac8c102dae
Update README.md 2019-01-03 11:41:41 -05:00
Gennadiy Civil
6e410a3ae9
Update README.md 2019-01-03 11:41:17 -05:00
Gennadiy Civil
8a27d164cb
Update README.md 2019-01-03 11:40:37 -05:00
Gennadiy Civil
bfcc47fc2f
Merge pull request #2026 from justin6case/example_makefile_improvements
Example/sample makefile improvements
2019-01-03 11:38:47 -05:00
Gennadiy Civil
1bcbd5871e Merge pull request #2037 from ciband:chore/fix_library_json
PiperOrigin-RevId: 227615222
2019-01-02 21:39:36 -05:00
misterg
14c2fba734 Googletest export
Internal Change

PiperOrigin-RevId: 227575279
2019-01-02 16:51:40 -05:00
Abseil Team
f8b1c1af17 Googletest export
Remove the #ifs for old, unsupported and buggy compilers:
* old versions of GCC & MSVC
* Symbian

PiperOrigin-RevId: 227116941
2019-01-02 16:51:33 -05:00
Gennadiy Civil
933e5df283
Merge pull request #2039 from gennadiycivil/master
Remove outdated scripts
2019-01-02 16:23:06 -05:00
Gennadiy Civil
8ed34e0f6b Remove outdated scripts 2019-01-02 16:03:50 -05:00
Gennadiy Civil
2ace910a35 Revert "test, please ignore"
This reverts commit 4665eee10a1d495aec9970fddf6231cf2339b1b7.
2019-01-02 16:02:34 -05:00
Gennadiy Civil
25905b9f9a Merge branch 'master' of https://github.com/google/googletest 2019-01-02 15:49:22 -05:00
Chris
de99386b67 Merge branch 'chore/fix_library_json' of https://github.com/ciband/googletest into chore/fix_library_json 2018-12-29 12:57:33 -06:00
Chris
6d5ce40d4c fix: Add additional source and include directories.
This is still a work in progress.
2018-12-29 12:57:04 -06:00
Gennadiy Civil
3bedb5a9fc
Merge pull request #2035 from syohex/update-xcode-project-file
Update Xcode project file
2018-12-28 11:21:32 -05:00
Syohei YOSHIDA
0cf2130c0b Update Xcode project file
Remove files which no longer exist.
2018-12-28 13:23:44 +09:00
Ryohei Machida
6729a13611 Merge #2002
PiperOrigin-RevId: 227030722
2018-12-27 15:31:14 -05:00
Gennadiy Civil
77004096e8
Update README.md 2018-12-27 12:04:11 -05:00
Gennadiy Civil
16269ae2f8 Merge pull request #2027 from ciband:chore/fix_library_json
PiperOrigin-RevId: 227028806
2018-12-27 11:52:54 -05:00
Chris Johnson
c0ef2cbe42
fix: Correct GitHub paths 2018-12-21 12:44:54 -06:00
Gennadiy Civil
1506131665
Update README.md 2018-12-21 13:24:39 -05:00
Gennadiy Civil
4160336cb4 Merge pull request #2013 from ciband:chore/fix_library_json
PiperOrigin-RevId: 226493373
2018-12-21 11:30:27 -05:00
Abseil Team
34a99e547a Googletest export
Get rid of code generation for NiceMock / StrictMock.
They got small enough that it doesn't make sense to generate them.

PiperOrigin-RevId: 226455689
2018-12-21 11:30:20 -05:00
Case, Matt
b93a13ec4d Improvements have been made to the example/sample makefiles for both googlemock
and googletest.
Library files are now created and named like versions produced
by Cmake.
2018-12-20 20:58:56 -06:00
Abseil Team
a83cc11abe Googletest export
Add public entry point testing::RegisterTest.

PiperOrigin-RevId: 226350937
2018-12-20 14:09:52 -05:00
Abseil Team
9494c45e75 Googletest export
Use std::function to implement type erasure in Action, wrapping the legacy
ActionInterface if necessary.

This makes functors / std::function the primary way to implement Action; the
existing ActionInterface implementations are handled through ActionAdaptor.
The existing actions are not (yet) migrated though; they'll pay the cost of one
additional indirection - but that should be negligible.

PiperOrigin-RevId: 226126137
2018-12-20 14:09:39 -05:00
Abseil Team
e26a3fa13c Googletest export
Unifdef c++11-related macros from googletest now that it requires C++11.

PiperOrigin-RevId: 225905601
2018-12-20 14:09:31 -05:00
misterg
9ab640ce5e Googletest export
Suppress C4503 for MCVS , again

PiperOrigin-RevId: 225895719
2018-12-17 17:57:39 -05:00
misterg
7515e39943 Googletest export
Suppress C4503 for MCVS

PiperOrigin-RevId: 225871050
2018-12-17 15:37:31 -05:00
Gennadiy Civil
85c4172ed6
Update README.md
Update build badge to point to the correct location
2018-12-17 14:03:51 -05:00
misterg
ed3f9bb229 Googletest export
Internal Change

PiperOrigin-RevId: 225849972
2018-12-17 13:53:46 -05:00
Abseil Team
b7dd66519f Googletest export
Remove GTEST_REFERENCE_TO_CONST_ usage from GMock. In C++11, it's redundant.

PiperOrigin-RevId: 225719210
2018-12-17 13:53:39 -05:00
Abseil Team
1ec20f87e3 Googletest export
Allow container matchers to accept move-only containers.

PiperOrigin-RevId: 225667441
2018-12-17 13:53:33 -05:00
Abseil Team
096fb37a19 Googletest export
Replace pump'd code for DoAll with variadic templates.

PiperOrigin-RevId: 225584656
2018-12-17 13:53:26 -05:00
Chris
0f698c830f chore: Add .vs to .gitignore for Visual Studio 2018-12-15 13:32:19 -06:00
Chris
1496f73cc4 fix: correct JSON syntax 2018-12-15 13:31:56 -06:00
Chris Johnson
130e5aa86a
Merge pull request #2 from google/master
merge upstream/master into master
2018-12-14 13:11:15 -06:00
Gennadiy Civil
b5f5c596a9 Merge pull request #2000 from ciband:feat/add_support_platformio
PiperOrigin-RevId: 225552792
2018-12-14 13:54:43 -05:00
Abseil Team
c6cb7e0335 Googletest export
Support skipped in XML and JSON output

PiperOrigin-RevId: 225386540
2018-12-13 16:00:21 -05:00
misterg
81f0026066 Googletest export
Internal Change

PiperOrigin-RevId: 225231727
2018-12-13 16:00:11 -05:00
Gennadiy Civil
3949c403c0
Update README.md
point build badge back to proper repo path
2018-12-13 14:04:11 -05:00
Abseil Team
6ef5913813 Googletest export
The gmock matchers have a concept of MatchAndExpain; where the details of the
matching are written to a "result listener". A matcher can avoid creating
expensive debug info by checking result_listener->IsInterested(); but,
unfortunately, the default matcher code (called from EXPECT_THAT) is always
"interested".

This change implements EXPECT_THAT matching to first run the matcher in a "not
interested" mode; and then run it a second time ("interested") only if the
match fails.

PiperOrigin-RevId: 225036073
2018-12-12 11:54:22 -05:00
Gennadiy Civil
b545089f51
Merge pull request #2004 from cotsog/patch-1
Cache gcc and clang APT packages
2018-12-12 09:16:43 -05:00
Dominic Jodoin
3b1f43c2e7
Use if statements 2018-12-12 00:01:07 -05:00
Dominic Jodoin
fc0f926768
Don't cache APT packages on OS X/macOS 2018-12-11 23:58:13 -05:00
Dominic Jodoin
ea5e941d84
Change directory ownership earlier 2018-12-11 22:50:17 -05:00
misterg
6cbd3753dc Googletest export
rollback of 224929783

PiperOrigin-RevId: 225008559
2018-12-11 11:36:30 -05:00
Abseil Team
06bb8d4d6d Googletest export
The gmock matchers have a concept of MatchAndExpain; where the details of the
matching are written to a "result listener". A matcher can avoid creating
expensive debug info by checking result_listener->IsInterested(); but,
unfortunately, the default matcher code (called from EXPECT_THAT) is always
"interested".

This change implements EXPECT_THAT matching to first run the matcher in a "not
interested" mode; and then run it a second time ("interested") only if the
match fails.

PiperOrigin-RevId: 224929783
2018-12-11 10:11:01 -05:00
Dominic Jodoin
b5c08cb9f4
Cache gcc and clang APT packages 2018-12-10 12:58:45 -05:00
Chris Johnson
31eb5e9b87
chore: Update version to latest release 2018-12-07 12:24:01 -06:00
Chris Johnson
d9251df849
fix: Remove global chmod from Travis
Removed global chmod +x for Travis scripts in favor of just applying it to PlatformIO builds.
2018-12-06 15:26:28 -06:00
Chris Johnson
39c09043b8
chore: Add initial library.json config
Added initial library.json config for PlatformIO

Version will be synced to proper googletest version once the PIO library has been registered and proven out round trip.
2018-12-06 12:35:06 -06:00
Gennadiy Civil
695cf7c962 Merge pull request #1997 from gpakosz:GTEST_IS_THREADSAFE
PiperOrigin-RevId: 224054240
2018-12-05 11:44:05 -05:00
Chris Johnson
2c8ab3f18b
feat: Add initial support for PlatformIO and Arduino 2018-12-04 21:44:39 -06:00
Gennadiy Civil
fe14e30307
Merge pull request #1995 from siddhanjay/patch-1
Fixed typo
2018-12-04 10:02:31 -05:00
Abseil Team
3d71ab4c37 Googletest export
Deduce SizeType for SizeIs() from the return value of the size() member function

PiperOrigin-RevId: 223835674
2018-12-04 09:45:03 -05:00
Gregory Pakosz
067aa4c28b Do not define GTEST_IS_THREADSAFE within GTEST_HAS_SEH 2018-12-04 14:47:24 +01:00
misterg
3fd66989bb Googletest export
Fix bazel issue

PiperOrigin-RevId: 223829127
2018-12-03 14:22:48 -05:00
Gennadiy Civil
214521a148
Update WORKSPACE
Need this for bazel change
2018-12-03 14:18:47 -05:00
Gennadiy Civil
a28a71ae41
Update README.md 2018-12-03 14:04:04 -05:00
Gennadiy Civil
10e82d01d9
Update README.md
Fix build icon location
2018-12-03 14:00:02 -05:00