Commit Graph

156 Commits

Author SHA1 Message Date
jgm
38513a8bb1 Unfortunately, the svn repo is a bit out of date. This commit contains 8
changes that haven't made it to svn. The descriptions of each change are listed
below.

- Fixes some python shebang lines.

- Add ElementsAreArray overloads to gmock. ElementsAreArray now makes a copy of
  its input elements before the conversion to a Matcher. ElementsAreArray can
  now take a vector as input. ElementsAreArray can now take an iterator pair as
  input.

- Templatize MatchAndExplain to allow independent string types for the matcher
  and matchee. I also templatized the ConstCharPointer version of
  MatchAndExplain to avoid calls with "char*" from using the new templated
  MatchAndExplain.

- Fixes the bug where the constructor of the return type of ElementsAre() saves
  a reference instead of a copy of the arguments.

- Extends ElementsAre() to accept arrays whose sizes aren't known.

- Switches gTest's internal FilePath class from testing::internal::String to
  std::string. testing::internal::String was introduced when gTest couldn't
  depend on std::string.  It's now deprecated.

- Switches gTest & gMock from using testing::internal::String objects to
  std::string. Some static methods of String are still in use.  We may be able
  to remove some but not all of them.  In particular, String::Format() should
  eventually be removed as it truncates the result at 4096 characters, often
  causing problems.
2012-11-15 15:50:36 +00:00
vladlosev
ada23475e2 Makes gmock's Pointee() work for optional<T> (by Jeffrey Yasskin). 2012-08-14 15:38:49 +00:00
zhanyong.wan
2fd619edd3 Pulls in gtest r615.
Renames internal enums to the kFoo naming style.

Fixes gmock doctor to work with newer versions of Clang.
2012-05-31 20:40:56 +00:00
jgm
79a367eb21 Reduced template instantiation depth for the AllOf and AnyOf matchers. Also some formatting changes. 2012-04-10 16:02:11 +00:00
vladlosev
9bcb5f9146 Fixes a lock reentrancy when destroying a mock causes destruction of another mock (issue 79) (by Aaron Jacobs). 2011-10-24 23:41:07 +00:00
zhanyong.wan
898725cf47 Implements matchers WhenSorted() and WhenSortedBy(); pulls in gtest r595. 2011-09-16 16:45:39 +00:00
vladlosev
587c1b37c2 Adds support for building Google Mock as a shared library (DLL). 2011-05-20 00:42:22 +00:00
vladlosev
47be72a952 A test to verify correcteness of Google Mock on multiple threads. 2011-05-11 08:18:45 +00:00
zhanyong.wan
8d3dc0cdd8 simplifies TrulyMatcher and adds a test for it 2011-04-14 19:37:06 +00:00
vladlosev
aa43220fe5 Changes diagnostic output of the question mark from '\?' to '?'. 2011-04-01 21:58:42 +00:00
zhanyong.wan
86d2eeb112 Prevents ADL in AllOf() and AnyOf() (by Manuel Klimek). 2011-03-16 17:10:39 +00:00
zhanyong.wan
fc8c6c479a Disables SetArgPointee("string literal") for GCC 4.0- and Symbian, and
adds support for SetArgPointee(L"wide string literal") -- by Vlad Losev.
2011-03-09 01:18:08 +00:00
zhanyong.wan
658ac0b71a Indents preprocessor directives. 2011-02-24 07:29:13 +00:00
zhanyong.wan
ed6c9277bb Makes Google Mock compile much faster and use much less memory; reviewed by Nico Weber. This fixes issue 68. 2011-02-23 19:39:27 +00:00
vladlosev
e5121b5a82 Improves cross-platform compatibility of gmock output. This fixes issue 135. 2011-02-11 23:50:38 +00:00
zhanyong.wan
a684b5a526 Enables SetArgPointee<>() to accept a string literal; removes a self-assignment warning; teaches gmock doctor to diagnose TTB with Clang; picks up gtest r525. 2010-12-02 23:30:50 +00:00
zhanyong.wan
2321b2a675 Adds action SaveArgPointee. 2010-10-14 06:51:27 +00:00
zhanyong.wan
5921483640 Adds SetArgPointee to replace SetArgumentPointee. 2010-10-05 05:58:51 +00:00
zhanyong.wan
736baa8ac0 Prints the type of the actual value as part of a match message when appropriate. 2010-09-27 17:44:16 +00:00
zhanyong.wan
53e08c44dd Include gtest and gmock headers as user headers instead of system headers. 2010-09-14 05:38:21 +00:00
zhanyong.wan
2516f60da9 Publishes GTEST_HAS_STREAM_REDIRECTION (by Vlad Losev); casts char to unsigned char before calling isspace() etc to avoid undefined behavior (by Zhanyong Wan); fixes the VC projects (by Fredrik Roubert). 2010-08-31 18:28:02 +00:00
zhanyong.wan
c6333dca1c Picks up gtest r453. 2010-08-09 18:20:45 +00:00
zhanyong.wan
d60c5f41c2 Removes unused scons scripts; picks up gtest r446. 2010-07-21 22:21:07 +00:00
zhanyong.wan
e3bd0981ca Implements ReturnPointee() and ReturnRefOfCopy(). 2010-07-03 00:16:42 +00:00
zhanyong.wan
02c1505ebf Increases the maximum arity of AllOf() and AnyOf() to 10, by Marcus Börger. 2010-06-09 19:21:30 +00:00
zhanyong.wan
b4140808f9 Replaces Python-style interpolation with arbitrary C++ string expression in MATCHER* descriptions. 2010-06-08 22:53:57 +00:00
zhanyong.wan
ab5b77c179 Implements Pointwise(). 2010-05-17 19:32:48 +00:00
vladlosev
e2e8ba401d Renames test script flags. 2010-05-13 18:16:03 +00:00
zhanyong.wan
02f7106557 Moves the universal printer from gmock to gtest (by Vlad Losev). 2010-05-10 17:14:29 +00:00
vladlosev
76c1c612e2 Fixes tests leaking altered values of GMOCK_FLAG(verbose) (issue 110). 2010-05-05 19:47:46 +00:00
vladlosev
54af9ba50a Adds a synchronization test. 2010-05-04 16:05:11 +00:00
zhanyong.wan
33605ba454 Adds Each(m) (by Wojtek Moczydlowski); removes scripts/test/Makefile (by Zhanyong Wan); pulls in gtest r424. 2010-04-22 23:37:47 +00:00
zhanyong.wan
b1c7f93c52 Improves matcher messages across the board. 2010-03-24 17:35:11 +00:00
zhanyong.wan
676e8cc609 Fixes the explanation generated by many composite matchers (by Manuel Klimek); publishes the gmock value printer as testing::PrintToString() (by Zhanyong Wan). 2010-03-16 20:01:51 +00:00
zhanyong.wan
a862f1de30 Adds IsInterested() to MatchResultListener; clarifies the format of matcher description and match result explanation; renames the free function MatchAndExplain() to ExplainMatchResult() to avoid it being hidden inside a MATCHER* definition. 2010-03-15 21:23:04 +00:00
zhanyong.wan
34b034c21e Adds a free function MatchAndExplain(). 2010-03-05 21:23:23 +00:00
zhanyong.wan
470df42bad Enables tests depending on stdout capturing (by Vlad Losev). 2010-02-02 22:34:58 +00:00
zhanyong.wan
db22c22782 BREAKING CHANGE: drops the old matcher API. See http://code.google.com/p/googlemock/wiki/FrequentlyAskedQuestions for details. 2010-01-28 21:52:29 +00:00
zhanyong.wan
d14aaed74b Enables regex matchers on all platforms. 2010-01-14 05:36:32 +00:00
zhanyong.wan
6953a725fc Allows Field() and Property() to work when the matcher argument is a pointer passed by reference. 2010-01-13 05:15:07 +00:00
zhanyong.wan
821133180c Implements the new matcher API. 2010-01-08 21:55:40 +00:00
zhanyong.wan
32de5f5376 Fixes a slew of compiler warnings and turns on "warning as error" in the scons build. 2009-12-23 00:13:23 +00:00
zhanyong.wan
39bf784f83 Removes uses of GTEST_HAS_STD_STRING. 2009-12-16 23:36:08 +00:00
zhanyong.wan
f6d6a22b8e Fixes Cygwin compatibility (by Vlad Losev); Improves Python tests (by Vlad Losev); Fixes ambiguous call to implicit_cast; Uses gtest's SkipPrefix() instead gmock's own (by Vlad Losev). 2009-12-01 19:42:25 +00:00
zhanyong.wan
19eb9e9e3d Pulls in gtest r344; improves implicit_cast (by Zhanyong Wan); makes the Python tests work on Windows (by Vlad Losev); adds run_tests.py (by Vlad Losev). 2009-11-24 20:23:18 +00:00
vladlosev
e56daa7de1 Tests NotNull/IsNull with testing::internal::scoped_ptr. 2009-11-18 01:08:08 +00:00
vladlosev
79b83505bc Updates IsNull and NotNull matchers to work with smart pointers. 2009-11-18 00:43:37 +00:00
vladlosev
201ac16191 Enables gmock's implicit_cast to work with source types that have a non-const conversion operator (by Zhanyong Wan). 2009-11-18 00:12:05 +00:00
vladlosev
a070cbd91c Enables gmock's implicit_cast to work with source types that 2009-11-18 00:09:28 +00:00
zhanyong.wan
2871bb4d34 Adds gmock_all_test.cc for compiling most gmock tests in a single file. 2009-11-12 19:18:48 +00:00
zhanyong.wan
2e7c475e16 Adds a dummy test to gmock-port.test.cc. 2009-11-06 23:43:30 +00:00
vladlosev
6c54a5e1f9 Enables more verbose output for expectations (by Sverre Sundsdal); Fixes information loss warning when compiled by VC8.0 with /Wp64; Skips two tests on Windows Mobile that don't work there. 2009-10-21 06:15:34 +00:00
zhanyong.wan
79643f51ed Changes gmock's version to 1.4.0. Also fixes a compiler warning. 2009-09-30 20:24:30 +00:00
zhanyong.wan
f3aa4d2934 Implements the MockFunction class. 2009-09-25 22:34:47 +00:00
zhanyong.wan
95b12332c3 Makes gmock work on Symbian (both 3rd & 5th editions), original patch contributed by Mika Raento. 2009-09-25 18:55:50 +00:00
zhanyong.wan
2d970ee3ba Adds the IsNull() matcher. 2009-09-24 21:41:36 +00:00
zhanyong.wan
f7af24c7de Simplifies gmock code using gtest's OS-indicating macros. 2009-09-24 21:17:24 +00:00
zhanyong.wan
a89034c802 Removes gmock's dependency on python2.4. 2009-09-22 16:18:42 +00:00
zhanyong.wan
bbd6e105e7 Picks up gtest r314. 2009-09-18 18:17:19 +00:00
zhanyong.wan
93244dc369 Disbles two tests that crash on Symbian. 2009-09-17 19:11:00 +00:00
zhanyong.wan
4bd79e4f25 Simplifies the definition of NativeArray. Works around a VC bug in StrictMock & NiceMock. 2009-09-16 17:38:08 +00:00
zhanyong.wan
f5e1ce5b92 Adds new matcher Pair(). Replaces GMOCK_CHECK_ with GTEST_CHECK_ (by Vlad Losev). 2009-09-16 07:02:02 +00:00
zhanyong.wan
c53b3dca1b Removes dead code in gmock-more-actions_test.cc. 2009-09-12 06:46:26 +00:00
zhanyong.wan
04d6ed817e Simplifies the tests using EXPECT_DEATH_IF_SUPPORTED. 2009-09-11 07:01:08 +00:00
zhanyong.wan
2b43a9ecd1 Adds mutable_impl() and impl() to PolymorphicMatcher (by Zhanyong Wan); Enables gMock to compile with VC 7.1 (by Vlad Losev). 2009-08-31 23:51:23 +00:00
zhanyong.wan
0ea67f88ae Improves protobuf print format. 2009-08-14 04:50:02 +00:00
zhanyong.wan
9571b28675 Removes duplicated definition of SetArgumentPointee (by Vlad Losev); Makes gmock compilable on platforms that don't have ::abort() (by Acadeli Checa); Fixes compatibility with Symbian's STLport (by Acadeli Checa). 2009-08-07 07:15:56 +00:00
zhanyong.wan
a18423e0ee Re-organizes the file structure for actions. 2009-07-22 23:58:19 +00:00
zhanyong.wan
1afe1c7971 Adds the ReturnArg<k>() action (by Tim Hockin); refactors gmock-matchers.h (by Zhanyong Wan). 2009-07-21 23:26:31 +00:00
zhanyong.wan
387bdd551d Makes ByRef(x) printable as a reference to x. 2009-07-20 21:16:35 +00:00
zhanyong.wan
b5937dab69 Adds the Key() matcher, by Marcus Borger. 2009-07-16 20:26:41 +00:00
zhanyong.wan
41b9b0b561 Implements Expectation, ExpectationSet, and After for specifying expectation orders. 2009-07-01 19:04:51 +00:00
zhanyong.wan
81476f2f90 Makes gmock-spec-builders_test.cc and gmock-internal-utils_test.cc work where both ::string and ::std::string are defined. 2009-06-22 23:30:47 +00:00
zhanyong.wan
90c90f9250 Switches from Boost TR1 tuple to gtest's TR1 tuple. 2009-06-17 22:11:04 +00:00
zhanyong.wan
4cd148e588 Removes the .WithArguments() clause from ON_CALL and EXPECT_CALL. 2009-06-11 20:07:00 +00:00
zhanyong.wan
bf55085d45 Implements .With() as a synonym of .WithArguments(); implements AllArgs(m) as a synonym of m; relies on gtest-port to #include tuple; fixes a compatibility with Symbian. 2009-06-09 06:09:53 +00:00
zhanyong.wan
2661c6821a Implements the Args<k1, ..., kn>(m) matcher. 2009-06-09 05:42:12 +00:00
zhanyong.wan
b82431625d Makes all container matchers work with (possibly multi-dimensional) native arrays; makes Contains() accept a matcher; adds Value(x, m); improves gmock doctor to diagnose the Type in Template Base disease. 2009-06-04 05:48:20 +00:00
zhanyong.wan
9413f2ff61 Avoids unnecessary printing of call into to internal buffers;
Made the universal value printer safer when printing char[];
Removed duplicated code in InvokeWith;
Improved gmock_doctor.py.
2009-05-29 19:50:06 +00:00
zhanyong.wan
16cf473930 Finishes SafeMatcherCast by catching lossy arithmetic conversions at compile-time; uses ACTION_TEMPLATE to simplify the definition of many actions; makes mock object uncopyable; teaches gmock doctor about wrong MOCK_METHODn. 2009-05-14 20:55:30 +00:00
zhanyong.wan
c6a412397b Adds more tests for using SetArgumentPointee with protobufs; works around a compiler bug on Symbian that gmock-printers.h triggers; reduces template code bloat in gmock-matchers.h; avoids RTTI when it's disabled. 2009-05-13 23:38:40 +00:00
zhanyong.wan
18490653e8 Partially implemented SafeMatcherCast (by Vlad Losev); updated the implementation of Not, AnyOf, and AllOf to use SafeMatcherCast (by Vlad Losev); implemented ACTION_TEMPLATE (by Zhanyong Wan); worked around bugs on Symbian (by Zhanyong Wan). 2009-05-11 18:54:08 +00:00
zhanyong.wan
e7bb5ededa Improves the error message for leaked mocks to include the test name (by Zhanyong Wan). 2009-05-05 23:14:47 +00:00
zhanyong.wan
bf0d0a4481 Turns --gmock_catch_leaked_mocks on by default. 2009-04-29 23:52:29 +00:00
zhanyong.wan
df35a763b9 Implements --gmock_catch_leaked_mocks and Mock::AllowLeak. 2009-04-22 22:25:31 +00:00
zhanyong.wan
1c8eb1c059 Adds actions ReturnNew<T>(...) and DeleteArg<k>(), by Jason Hsueh. 2009-04-09 07:29:58 +00:00
zhanyong.wan
3fbd2dd020 Makes gmock compile with gcc -Wall -Wextra -Wno-unused-parameter. 2009-03-26 19:06:45 +00:00
zhanyong.wan
68be111b4c Allows mock methods overloaded on argument number or the const-ness of this object to appear on the same source line. 2009-03-25 03:56:48 +00:00
zhanyong.wan
5b5d62f190 Makes the code compile on Windows CE. 2009-03-11 23:37:56 +00:00
zhanyong.wan
93ad3551c0 Fixes gmock-port_test on Windows. 2009-03-06 01:21:45 +00:00
zhanyong.wan
6f14769e86 Allows a mock object to delete itself in an action. By Simon Bowden. 2009-03-03 06:44:08 +00:00
zhanyong.wan
652540a278 Cleans up macro definitions. 2009-02-23 23:37:29 +00:00
zhanyong.wan
1bee7b2f1d Implements Contains(element) matcher. By Gary Morain. 2009-02-20 18:31:04 +00:00
zhanyong.wan
7f4c2c0f95 Adds two actions: SaveArg and SetArgReferee. 2009-02-19 22:38:27 +00:00
zhanyong.wan
38ca64dd5f Fixes link errors due to an MS VC bug. By Vlad Losev. 2009-02-19 22:30:22 +00:00
zhanyong.wan
4a5330d3d6 Implements custom description string for MATCHER*. 2009-02-19 00:36:44 +00:00
zhanyong.wan
e0d051ea64 Makes sure all internal macros are named GMOCK_*_. No functionality is changed. 2009-02-19 00:33:37 +00:00
zhanyong.wan
ce198ff899 Implements the MATCHER* macros. 2009-02-12 01:34:27 +00:00
zhanyong.wan
2f0849fef4 Fixes the "ambiguous overload" compiler error when a mock function takes an argument that supports streaming to basic_ostream<C, T>. 2009-02-11 18:06:37 +00:00
zhanyong.wan
e1cdce5f76 Implements action Throw(exception). 2009-02-06 01:09:43 +00:00