]> git.proxmox.com Git - ceph.git/blob - ceph/src/rapidjson/thirdparty/gtest/googlemock/CHANGES
update sources to v12.1.0
[ceph.git] / ceph / src / rapidjson / thirdparty / gtest / googlemock / CHANGES
1 Changes for 1.7.0:
2
3 * All new improvements in Google Test 1.7.0.
4 * New feature: matchers DoubleNear(), FloatNear(),
5 NanSensitiveDoubleNear(), NanSensitiveFloatNear(),
6 UnorderedElementsAre(), UnorderedElementsAreArray(), WhenSorted(),
7 WhenSortedBy(), IsEmpty(), and SizeIs().
8 * Improvement: Google Mock can now be built as a DLL.
9 * Improvement: when compiled by a C++11 compiler, matchers AllOf()
10 and AnyOf() can accept an arbitrary number of matchers.
11 * Improvement: when compiled by a C++11 compiler, matchers
12 ElementsAreArray() can accept an initializer list.
13 * Improvement: when exceptions are enabled, a mock method with no
14 default action now throws instead crashing the test.
15 * Improvement: added class testing::StringMatchResultListener to aid
16 definition of composite matchers.
17 * Improvement: function return types used in MOCK_METHOD*() macros can
18 now contain unprotected commas.
19 * Improvement (potentially breaking): EXPECT_THAT() and ASSERT_THAT()
20 are now more strict in ensuring that the value type and the matcher
21 type are compatible, catching potential bugs in tests.
22 * Improvement: Pointee() now works on an optional<T>.
23 * Improvement: the ElementsAreArray() matcher can now take a vector or
24 iterator range as input, and makes a copy of its input elements
25 before the conversion to a Matcher.
26 * Improvement: the Google Mock Generator can now generate mocks for
27 some class templates.
28 * Bug fix: mock object destruction triggerred by another mock object's
29 destruction no longer hangs.
30 * Improvement: Google Mock Doctor works better with newer Clang and
31 GCC now.
32 * Compatibility fixes.
33 * Bug/warning fixes.
34
35 Changes for 1.6.0:
36
37 * Compilation is much faster and uses much less memory, especially
38 when the constructor and destructor of a mock class are moved out of
39 the class body.
40 * New matchers: Pointwise(), Each().
41 * New actions: ReturnPointee() and ReturnRefOfCopy().
42 * CMake support.
43 * Project files for Visual Studio 2010.
44 * AllOf() and AnyOf() can handle up-to 10 arguments now.
45 * Google Mock doctor understands Clang error messages now.
46 * SetArgPointee<> now accepts string literals.
47 * gmock_gen.py handles storage specifier macros and template return
48 types now.
49 * Compatibility fixes.
50 * Bug fixes and implementation clean-ups.
51 * Potentially incompatible changes: disables the harmful 'make install'
52 command in autotools.
53
54 Potentially breaking changes:
55
56 * The description string for MATCHER*() changes from Python-style
57 interpolation to an ordinary C++ string expression.
58 * SetArgumentPointee is deprecated in favor of SetArgPointee.
59 * Some non-essential project files for Visual Studio 2005 are removed.
60
61 Changes for 1.5.0:
62
63 * New feature: Google Mock can be safely used in multi-threaded tests
64 on platforms having pthreads.
65 * New feature: function for printing a value of arbitrary type.
66 * New feature: function ExplainMatchResult() for easy definition of
67 composite matchers.
68 * The new matcher API lets user-defined matchers generate custom
69 explanations more directly and efficiently.
70 * Better failure messages all around.
71 * NotNull() and IsNull() now work with smart pointers.
72 * Field() and Property() now work when the matcher argument is a pointer
73 passed by reference.
74 * Regular expression matchers on all platforms.
75 * Added GCC 4.0 support for Google Mock Doctor.
76 * Added gmock_all_test.cc for compiling most Google Mock tests
77 in a single file.
78 * Significantly cleaned up compiler warnings.
79 * Bug fixes, better test coverage, and implementation clean-ups.
80
81 Potentially breaking changes:
82
83 * Custom matchers defined using MatcherInterface or MakePolymorphicMatcher()
84 need to be updated after upgrading to Google Mock 1.5.0; matchers defined
85 using MATCHER or MATCHER_P* aren't affected.
86 * Dropped support for 'make install'.
87
88 Changes for 1.4.0 (we skipped 1.2.* and 1.3.* to match the version of
89 Google Test):
90
91 * Works in more environments: Symbian and minGW, Visual C++ 7.1.
92 * Lighter weight: comes with our own implementation of TR1 tuple (no
93 more dependency on Boost!).
94 * New feature: --gmock_catch_leaked_mocks for detecting leaked mocks.
95 * New feature: ACTION_TEMPLATE for defining templatized actions.
96 * New feature: the .After() clause for specifying expectation order.
97 * New feature: the .With() clause for for specifying inter-argument
98 constraints.
99 * New feature: actions ReturnArg<k>(), ReturnNew<T>(...), and
100 DeleteArg<k>().
101 * New feature: matchers Key(), Pair(), Args<...>(), AllArgs(), IsNull(),
102 and Contains().
103 * New feature: utility class MockFunction<F>, useful for checkpoints, etc.
104 * New feature: functions Value(x, m) and SafeMatcherCast<T>(m).
105 * New feature: copying a mock object is rejected at compile time.
106 * New feature: a script for fusing all Google Mock and Google Test
107 source files for easy deployment.
108 * Improved the Google Mock doctor to diagnose more diseases.
109 * Improved the Google Mock generator script.
110 * Compatibility fixes for Mac OS X and gcc.
111 * Bug fixes and implementation clean-ups.
112
113 Changes for 1.1.0:
114
115 * New feature: ability to use Google Mock with any testing framework.
116 * New feature: macros for easily defining new matchers
117 * New feature: macros for easily defining new actions.
118 * New feature: more container matchers.
119 * New feature: actions for accessing function arguments and throwing
120 exceptions.
121 * Improved the Google Mock doctor script for diagnosing compiler errors.
122 * Bug fixes and implementation clean-ups.
123
124 Changes for 1.0.0:
125
126 * Initial Open Source release of Google Mock