CHANGES 5.4 KB

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