Release Notes
GoogleTest will
not
accept patches of new features to v1.11.0.
We recommend building GoogleTest from the latest commit instead.
Exceptional critical bug fixes may be considered.
Documentation
Contents significantly updated
Files moved into docs (
4892835
)
Now using
GitHub pages
(
1a5a78b
,
d9c309f
,
c3fc92f
)
Added Bazel quickstart (
32ad3c8
)
Added CMake quickstart (
d4e3b8c
)
Mocking
MOCK_METHOD
now handles noexcept correctly (
#2498
)
MOCK_METHOD
now supports ref-qualifiers (
d89b363
)
MOCK_METHOD
now supports returning function pointers (
1f9edcd
)
DoAll
now accepts move-only arguments (
48ec640
)
MockFunction
can now be used for mocking
std::function
(
#2350
)
MockFunction
is now templated for use with other function classes, besides
std::function
(
662fe38
)
ACTION
macros now support more than 10 arguments (
63713e1
)
Matchers
New matchers
IsNan
(
bbe4b73
)
FieldsAre
(
a462188
)
Pointer
(
a02a591
)
Address
(
e5644f5
)
Throws
and
ThrowsMessage
(
#2904
)
New actions
ReturnRoundRobin
(
37f3227
)
Added
Matcher<std::string_view>
specialization that internally stores a
string
instead of
string_view
(
6f5fd0d
)
String matchers now accept
string_view
input (
13a433a
)
DoubleNearPredFormat
matcher now fails on impractically small epsilons (
b5687db
)
Truly
matcher now explains failures (
0c400f6
)
Matchers can now be implemented without extending
MatcherInterface
(
c13c27a
)
Added output messages for skipped tests (
#2517
,
#2767
)
Behavior
New flags
--gtest_brief
shows only test failures in output (
#2751
)
--gtest_fail_fast
stops test execution on first failure (
1ced315
)
Failures in
SetUpTestSuite
and
TearDownTestSuite
now cause tests to fail rather than log (
9ed99c6
)
Uninstantiated
TEST_P
and
TYPED_TEST_P
now fail unless allowlisted using
GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST
(
d442089
,
a13a062
,
0b024bd
,
3e79d36
,
ec94d9f
)
Output
Added specialized printing for
std::any
,
std::optional
, and
std::variant
(
#2742
)
Added recursive printing for
std::unique_ptr
and
std::shared_ptr
(
6b2e749
)
Printing incomplete types is now supported (
f8304d7
)
Start timestamps in XML/JSON output now use millisecond precision (
af1e75c
)
Added more structured information about test suite to XML/JSON output on environment failures (
ac1d60c
)
Build & Test
CMake minimum increased to 2.8.12 (
#3094
)
GoogleTest is now using Kokoro CI instead of Travis and AppVeyor
Removed support for
GTEST_HAS_STD_STRING
(
#2456
)
Replaced pump code generation with variadic templates (
#2388
,
d8eeb97
,
4b9c169
,
fbf67a7
,
41b5f14
,
710f9c1
,
997c36c
,
59dea67
)
Spixmaster, nfraprado, lelezard7, arong, rezamahdi, jslee02, yqrickw10, mike-malburg, pthreadself, Drakemor, and 33 more reacted with thumbs up emoji
beemibrahim reacted with laugh emoji
Bedzior, pgeler, lcdunstan, blishko, Leo7654, lukasz-mitka, damienlaidinsonos, Gluttton, qwinsi, StrikerRUS, and 5 more reacted with hooray emoji
beemibrahim, amdazm05, and Tuneabq reacted with heart emoji
beemibrahim and HunterColes reacted with rocket emoji
Mizux, smotrjashka, giobim, xTachyon, yoursweetie, beemibrahim, shekar-store, Alski1516777, and eternity1460 reacted with eyes emoji
All reactions
Release 1.10.0
1.10.0 Release reflects a current version of the project.
The 1.10.x will not consider any requests for any new features, The bug fix requests will only be considered if proven "critical"
High Level Changes:
This release deprecated "....TEST_CASE" API in favor of "....TEST_SUITE". In a nutshell if you have code that uses something like "INSTANTIATE_TYPED_TEST_CASE_P " - this and all other "*_TEST_CASE " are now deprecated in favor of more standard _TEST_SUITE. See
https://github.com/google/googletest/blob/master/googletest/docs/primer.md#beware-of-the-nomenclature
.
There is also new powerful MOCK_METHOD macro. See
https://github.com/google/googletest/blob/72adf7a4155b6642da1e6761678fe546590c0269/googlemock/docs/cook_book.md#creating-mock-classes
. This replaces older way of mocking.
For example
(Old) MOCK_METHOD1(Bar, double(std::string s));
(New) MOCK_METHOD(double, Bar, (std::string s), (override));
So there is no need to count the parameters anymore.
1.8.1 Release reflects a current version of the project.
The 1.8.x is the last release supporting pre-C++11 compilers.
The 1.8.x will not accept any requests for any new features and any bugfix requests will only be accepted if proven "critical"
Uncolor-Duck, xiaonanhai, xbbnr82, markwinds, konradha, maruimm, shejun6, and letsgogeeky reacted with thumbs up emoji
maruimm and letsgogeeky reacted with heart emoji
maruimm reacted with rocket emoji
All reactions