36#include "gtest/gtest.h"
37#include "gtest/gtest-spi.h"
55using testing::GMOCK_FLAG(verbose);
61#if GTEST_HAS_STREAM_REDIRECTION
62using testing::internal::CaptureStdout;
63using testing::internal::GetCapturedStdout;
92 MockBar(
char a1,
char a2,
string a3,
string a4,
int a5,
int a6,
93 const string& a7,
const string& a8,
bool a9,
bool a10) {
94 str_ =
string() + a1 + a2 + a3 + a4 +
static_cast<char>(a5) +
95 static_cast<char>(a6) + a7 + a8 + (a9 ?
'T' :
'F') + (a10 ?
'T' :
'F');
111#if GTEST_HAS_STREAM_REDIRECTION
114TEST(RawMockTest, WarningForUninterestingCall) {
115 const string saved_flag =
GMOCK_FLAG(verbose);
124 HasSubstr(
"Uninteresting mock function call"));
131TEST(RawMockTest, WarningForUninterestingCallAfterDeath) {
132 const string saved_flag =
GMOCK_FLAG(verbose);
135 MockFoo*
const raw_foo =
new MockFoo;
143 HasSubstr(
"Uninteresting mock function call"));
150TEST(RawMockTest, InfoForUninterestingCall) {
153 const string saved_flag =
GMOCK_FLAG(verbose);
158 HasSubstr(
"Uninteresting mock function call"));
164TEST(NiceMockTest, NoWarningForUninterestingCall) {
169 nice_foo.DoThat(
true);
175TEST(NiceMockTest, NoWarningForUninterestingCallAfterDeath) {
188TEST(NiceMockTest, InfoForUninterestingCall) {
191 const string saved_flag =
GMOCK_FLAG(verbose);
196 HasSubstr(
"Uninteresting mock function call"));
204TEST(NiceMockTest, AllowsExpectedCall) {
212TEST(NiceMockTest, UnexpectedCallFails) {
221TEST(NiceMockTest, NonDefaultConstructor) {
226 nice_bar.That(5,
true);
231TEST(NiceMockTest, NonDefaultConstructor10) {
233 "g",
"h",
true,
false);
237 nice_bar.That(5,
true);
240#if !GTEST_OS_SYMBIAN && !GTEST_OS_WINDOWS_MOBILE
249TEST(NiceMockTest, AcceptsClassNamedMock) {
256#if GTEST_HAS_STREAM_REDIRECTION
259TEST(NaggyMockTest, WarningForUninterestingCall) {
260 const string saved_flag =
GMOCK_FLAG(verbose);
267 naggy_foo.DoThat(
true);
269 HasSubstr(
"Uninteresting mock function call"));
276TEST(NaggyMockTest, WarningForUninterestingCallAfterDeath) {
277 const string saved_flag =
GMOCK_FLAG(verbose);
288 HasSubstr(
"Uninteresting mock function call"));
296TEST(NaggyMockTest, AllowsExpectedCall) {
304TEST(NaggyMockTest, UnexpectedCallFails) {
309 "called more times than expected");
314TEST(NaggyMockTest, NonDefaultConstructor) {
319 naggy_bar.That(5,
true);
324TEST(NaggyMockTest, NonDefaultConstructor10) {
326 "6",
"7",
true,
false);
327 EXPECT_EQ(
"01234567TF", naggy_bar.str());
330 naggy_bar.That(5,
true);
333#if !GTEST_OS_SYMBIAN && !GTEST_OS_WINDOWS_MOBILE
342TEST(NaggyMockTest, AcceptsClassNamedMock) {
350TEST(StrictMockTest, AllowsExpectedCall) {
358TEST(StrictMockTest, UnexpectedCallFails) {
363 "called more times than expected");
367TEST(StrictMockTest, UninterestingCallFails) {
371 "Uninteresting mock function call");
376TEST(StrictMockTest, UninterestingCallFailsAfterDeath) {
383 "Uninteresting mock function call");
388TEST(StrictMockTest, NonDefaultConstructor) {
393 "Uninteresting mock function call");
398TEST(StrictMockTest, NonDefaultConstructor10) {
400 "g",
"h",
true,
false);
401 EXPECT_EQ(
"abcdefghTF", strict_bar.str());
404 "Uninteresting mock function call");
407#if !GTEST_OS_SYMBIAN && !GTEST_OS_WINDOWS_MOBILE
416TEST(StrictMockTest, AcceptsClassNamedMock) {
#define s(x, c)
Definition aesb.c:47
Mock()
Definition gmock-nice-strict_test.cc:43
GTEST_DISALLOW_COPY_AND_ASSIGN_(Mock)
MOCK_METHOD0(DoThis, void())
Definition gmock-generated-nice-strict.h:176
Definition gmock-generated-nice-strict.h:80
Definition gmock-generated-nice-strict.h:272
Definition gmock-nice-strict_test.cc:68
virtual ~Foo()
Definition gmock-nice-strict_test.cc:70
virtual int DoThat(bool flag)=0
virtual ~MockBar()
Definition gmock-nice-strict_test.cc:98
GTEST_DISALLOW_COPY_AND_ASSIGN_(MockBar)
MockBar(char a1, char a2, string a3, string a4, int a5, int a6, const string &a7, const string &a8, bool a9, bool a10)
Definition gmock-nice-strict_test.cc:92
MockBar(const string &s)
Definition gmock-nice-strict_test.cc:90
string str_
Definition gmock-nice-strict_test.cc:106
const string & str() const
Definition gmock-nice-strict_test.cc:100
MOCK_METHOD0(This, int())
MOCK_METHOD2(That, string(int, bool))
Definition gmock-nice-strict_test.cc:76
MOCK_METHOD0(DoThis, void())
MOCK_METHOD1(DoThat, int(bool flag))
MockFoo()
Definition gmock-nice-strict_test.cc:78
void Delete()
Definition gmock-nice-strict_test.cc:79
GTEST_DISALLOW_COPY_AND_ASSIGN_(MockFoo)
Definition gmock-generated-nice-strict.h:176
#define EXPECT_NONFATAL_FAILURE(statement, substr)
Definition gtest-spi.h:204
#define EXPECT_EQ(val1, val2)
Definition gtest.h:1922
#define TEST(test_case_name, test_name)
Definition gtest.h:2187
#define EXPECT_THAT(value, matcher)
Definition gmock-matchers.h:4390
#define GMOCK_FLAG(name)
Definition gmock-port.h:70
#define EXPECT_CALL(obj, call)
Definition gmock-spec-builders.h:1845
#define ON_CALL(obj, call)
Definition gmock-spec-builders.h:1841
Definition gmock-nice-strict_test.cc:52
PolymorphicMatcher< internal::HasSubstrMatcher< internal::string > > HasSubstr(const internal::string &substring)
Definition gmock-matchers.h:3984
::std::string string
Definition gtest-port.h:1097
Definition gmock-actions.h:53
PolymorphicMatcher< internal::HasSubstrMatcher< internal::string > > HasSubstr(const internal::string &substring)
Definition gmock-matchers.h:3984
PolymorphicAction< internal::InvokeAction< FunctionImpl > > Invoke(FunctionImpl function_impl)
Definition gmock-more-actions.h:114