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