blob: fc5c7954ecbb32b0206c4f67afe46808c110c4ff [file] [log] [blame]
zhanyong.wan061f1d42013-04-07 03:16:38 +00001Changes for 1.7.0:
2
zhanyong.wanf4274522013-04-24 02:49:43 +00003* All new improvements in Google Test 1.7.0.
zhanyong.wan616180e2013-06-18 18:49:51 +00004* New feature: matchers DoubleNear(), FloatNear(),
5 NanSensitiveDoubleNear(), NanSensitiveFloatNear(), WhenSorted(),
6 WhenSortedBy(), IsEmpty(), and SizeIs().
zhanyong.wanf4274522013-04-24 02:49:43 +00007* Improvement: Google Mock can now be built as a DLL.
zhanyong.wan616180e2013-06-18 18:49:51 +00008* Improvement: when compiled by a C++11 compiler, matchers AllOf()
9 and AnyOf() can accept an arbitrary number of matchers.
zhanyong.wanf4274522013-04-24 02:49:43 +000010* Improvement: when exceptions are enabled, a mock method with no
11 default action now throws instead crashing the test.
12* Improvement: function return types used in MOCK_METHOD*() macros can
13 now contain unprotected commas.
14* Improvement (potentially breaking): EXPECT_THAT() and ASSERT_THAT()
15 are now more strict in ensuring that the value type and the matcher
16 type are compatible, catching potential bugs in tests.
17* Improvement: Pointee() now works on an optional<T>.
18* Improvement: the ElementsAreArray() matcher can now take a vector or
19 iterator range as input, and makes a copy of its input elements
20 before the conversion to a Matcher.
21* Bug fix: mock object destruction triggerred by another mock object's
22 destruction no longer hangs.
23* Improvement: Google Mock Doctor works better with newer Clang and
24 GCC now.
25* Compatibility fixes.
26* Bug/warning fixes.
zhanyong.wan061f1d42013-04-07 03:16:38 +000027
zhanyong.wan79d82b62011-02-24 07:31:48 +000028Changes for 1.6.0:
29
30* Compilation is much faster and uses much less memory, especially
31 when the constructor and destructor of a mock class are moved out of
32 the class body.
33* New matchers: Pointwise(), Each().
34* New actions: ReturnPointee() and ReturnRefOfCopy().
zhanyong.wan62a35fb2011-02-24 21:59:54 +000035* CMake support.
zhanyong.wan79d82b62011-02-24 07:31:48 +000036* Project files for Visual Studio 2010.
37* AllOf() and AnyOf() can handle up-to 10 arguments now.
38* Google Mock doctor understands Clang error messages now.
39* SetArgPointee<> now accepts string literals.
40* gmock_gen.py handles storage specifier macros and template return
41 types now.
42* Compatibility fixes.
43* Bug fixes and implementation clean-ups.
zhanyong.wan8d7c5ad2011-04-14 07:49:05 +000044* Potentially incompatible changes: disables the harmful 'make install'
45 command in autotools.
zhanyong.wan79d82b62011-02-24 07:31:48 +000046
47Potentially breaking changes:
48
49* The description string for MATCHER*() changes from Python-style
50 interpolation to an ordinary C++ string expression.
51* SetArgumentPointee is deprecated in favor of SetArgPointee.
52* Some non-essential project files for Visual Studio 2005 are removed.
53
zhanyong.wan5905ba02010-02-24 17:21:37 +000054Changes for 1.5.0:
55
zhanyong.wanaa28b172010-03-26 05:38:55 +000056 * New feature: Google Mock can be safely used in multi-threaded tests
57 on platforms having pthreads.
58 * New feature: function for printing a value of arbitrary type.
59 * New feature: function ExplainMatchResult() for easy definition of
60 composite matchers.
zhanyong.wan5905ba02010-02-24 17:21:37 +000061 * The new matcher API lets user-defined matchers generate custom
62 explanations more directly and efficiently.
zhanyong.wanaa28b172010-03-26 05:38:55 +000063 * Better failure messages all around.
zhanyong.wan5905ba02010-02-24 17:21:37 +000064 * NotNull() and IsNull() now work with smart pointers.
65 * Field() and Property() now work when the matcher argument is a pointer
66 passed by reference.
zhanyong.wanaa28b172010-03-26 05:38:55 +000067 * Regular expression matchers on all platforms.
zhanyong.wan5905ba02010-02-24 17:21:37 +000068 * Added GCC 4.0 support for Google Mock Doctor.
69 * Added gmock_all_test.cc for compiling most Google Mock tests
70 in a single file.
71 * Significantly cleaned up compiler warnings.
72 * Bug fixes, better test coverage, and implementation clean-ups.
73
74 Potentially breaking changes:
75
76 * Custom matchers defined using MatcherInterface or MakePolymorphicMatcher()
77 need to be updated after upgrading to Google Mock 1.5.0; matchers defined
78 using MATCHER or MATCHER_P* aren't affected.
79 * Dropped support for 'make install'.
80
zhanyong.wan7db42db2009-10-01 23:31:41 +000081Changes for 1.4.0 (we skipped 1.2.* and 1.3.* to match the version of
82Google Test):
zhanyong.wan5bc7cfe2009-09-04 18:10:53 +000083
zhanyong.wan7db42db2009-10-01 23:31:41 +000084 * Works in more environments: Symbian and minGW, Visual C++ 7.1.
85 * Lighter weight: comes with our own implementation of TR1 tuple (no
86 more dependency on Boost!).
zhanyong.wan5bc7cfe2009-09-04 18:10:53 +000087 * New feature: --gmock_catch_leaked_mocks for detecting leaked mocks.
88 * New feature: ACTION_TEMPLATE for defining templatized actions.
89 * New feature: the .After() clause for specifying expectation order.
90 * New feature: the .With() clause for for specifying inter-argument
91 constraints.
92 * New feature: actions ReturnArg<k>(), ReturnNew<T>(...), and
93 DeleteArg<k>().
zhanyong.wan7db42db2009-10-01 23:31:41 +000094 * New feature: matchers Key(), Pair(), Args<...>(), AllArgs(), IsNull(),
95 and Contains().
96 * New feature: utility class MockFunction<F>, useful for checkpoints, etc.
zhanyong.wan5bc7cfe2009-09-04 18:10:53 +000097 * New feature: functions Value(x, m) and SafeMatcherCast<T>(m).
98 * New feature: copying a mock object is rejected at compile time.
99 * New feature: a script for fusing all Google Mock and Google Test
100 source files for easy deployment.
101 * Improved the Google Mock doctor to diagnose more diseases.
102 * Improved the Google Mock generator script.
zhanyong.wan7db42db2009-10-01 23:31:41 +0000103 * Compatibility fixes for Mac OS X and gcc.
zhanyong.wan5bc7cfe2009-09-04 18:10:53 +0000104 * Bug fixes and implementation clean-ups.
105
zhanyong.wanda579bd2009-03-17 23:34:45 +0000106Changes for 1.1.0:
107
108 * New feature: ability to use Google Mock with any testing framework.
109 * New feature: macros for easily defining new matchers
110 * New feature: macros for easily defining new actions.
111 * New feature: more container matchers.
112 * New feature: actions for accessing function arguments and throwing
113 exceptions.
114 * Improved the Google Mock doctor script for diagnosing compiler errors.
zhanyong.wan5bc7cfe2009-09-04 18:10:53 +0000115 * Bug fixes and implementation clean-ups.
zhanyong.wanda579bd2009-03-17 23:34:45 +0000116
shiqiane35fdd92008-12-10 05:08:54 +0000117Changes for 1.0.0:
118
119 * Initial Open Source release of Google Mock