Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(79)

Side by Side Diff: testing/gmock/test/gmock-nice-strict_test.cc

Issue 1151006: Update to current gtest/gmock. (Closed)
Patch Set: rebase Created 10 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « testing/gmock/test/gmock-matchers_test.cc ('k') | testing/gmock/test/gmock-printers_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2008, Google Inc. 1 // Copyright 2008, Google Inc.
2 // All rights reserved. 2 // All rights reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are 5 // modification, are permitted provided that the following conditions are
6 // met: 6 // met:
7 // 7 //
8 // * Redistributions of source code must retain the above copyright 8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer. 9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above 10 // * Redistributions in binary form must reproduce the above
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 50
51 namespace testing { 51 namespace testing {
52 namespace gmock_nice_strict_test { 52 namespace gmock_nice_strict_test {
53 53
54 using testing::internal::string; 54 using testing::internal::string;
55 using testing::GMOCK_FLAG(verbose); 55 using testing::GMOCK_FLAG(verbose);
56 using testing::HasSubstr; 56 using testing::HasSubstr;
57 using testing::NiceMock; 57 using testing::NiceMock;
58 using testing::StrictMock; 58 using testing::StrictMock;
59 59
60 #if GTEST_HAS_STREAM_REDIRECTION_
61 using testing::internal::CaptureStdout;
62 using testing::internal::GetCapturedStdout;
63 #endif // GTEST_HAS_STREAM_REDIRECTION_
64
60 // Defines some mock classes needed by the tests. 65 // Defines some mock classes needed by the tests.
61 66
62 class Foo { 67 class Foo {
63 public: 68 public:
64 virtual ~Foo() {} 69 virtual ~Foo() {}
65 70
66 virtual void DoThis() = 0; 71 virtual void DoThis() = 0;
67 virtual int DoThat(bool flag) = 0; 72 virtual int DoThat(bool flag) = 0;
68 }; 73 };
69 74
(...skipping 25 matching lines...) Expand all
95 100
96 MOCK_METHOD0(This, int()); 101 MOCK_METHOD0(This, int());
97 MOCK_METHOD2(That, string(int, bool)); 102 MOCK_METHOD2(That, string(int, bool));
98 103
99 private: 104 private:
100 string str_; 105 string str_;
101 106
102 GTEST_DISALLOW_COPY_AND_ASSIGN_(MockBar); 107 GTEST_DISALLOW_COPY_AND_ASSIGN_(MockBar);
103 }; 108 };
104 109
105 // TODO(wan@google.com): find a way to re-enable these tests. 110 #if GTEST_HAS_STREAM_REDIRECTION_
106 #if 0
107 111
108 // Tests that a nice mock generates no warning for uninteresting calls. 112 // Tests that a nice mock generates no warning for uninteresting calls.
109 TEST(NiceMockTest, NoWarningForUninterestingCall) { 113 TEST(NiceMockTest, NoWarningForUninterestingCall) {
110 NiceMock<MockFoo> nice_foo; 114 NiceMock<MockFoo> nice_foo;
111 115
112 CaptureTestStdout(); 116 CaptureStdout();
113 nice_foo.DoThis(); 117 nice_foo.DoThis();
114 nice_foo.DoThat(true); 118 nice_foo.DoThat(true);
115 EXPECT_EQ("", GetCapturedTestStdout()); 119 EXPECT_STREQ("", GetCapturedStdout().c_str());
116 } 120 }
117 121
118 // Tests that a nice mock generates no warning for uninteresting calls 122 // Tests that a nice mock generates no warning for uninteresting calls
119 // that delete the mock object. 123 // that delete the mock object.
120 TEST(NiceMockTest, NoWarningForUninterestingCallAfterDeath) { 124 TEST(NiceMockTest, NoWarningForUninterestingCallAfterDeath) {
121 NiceMock<MockFoo>* const nice_foo = new NiceMock<MockFoo>; 125 NiceMock<MockFoo>* const nice_foo = new NiceMock<MockFoo>;
122 126
123 ON_CALL(*nice_foo, DoThis()) 127 ON_CALL(*nice_foo, DoThis())
124 .WillByDefault(Invoke(nice_foo, &MockFoo::Delete)); 128 .WillByDefault(Invoke(nice_foo, &MockFoo::Delete));
125 129
126 CaptureTestStdout(); 130 CaptureStdout();
127 nice_foo->DoThis(); 131 nice_foo->DoThis();
128 EXPECT_EQ("", GetCapturedTestStdout()); 132 EXPECT_STREQ("", GetCapturedStdout().c_str());
129 } 133 }
130 134
131 // Tests that a nice mock generates informational logs for 135 // Tests that a nice mock generates informational logs for
132 // uninteresting calls. 136 // uninteresting calls.
133 TEST(NiceMockTest, InfoForUninterestingCall) { 137 TEST(NiceMockTest, InfoForUninterestingCall) {
134 NiceMock<MockFoo> nice_foo; 138 NiceMock<MockFoo> nice_foo;
135 139
136 GMOCK_FLAG(verbose) = "info"; 140 GMOCK_FLAG(verbose) = "info";
137 CaptureTestStdout(); 141 CaptureStdout();
138 nice_foo.DoThis(); 142 nice_foo.DoThis();
139 EXPECT_THAT(GetCapturedTestStdout(), 143 EXPECT_THAT(GetCapturedStdout(),
140 HasSubstr("Uninteresting mock function call")); 144 HasSubstr("Uninteresting mock function call"));
141 145
142 CaptureTestStdout(); 146 CaptureStdout();
143 nice_foo.DoThat(true); 147 nice_foo.DoThat(true);
144 EXPECT_THAT(GetCapturedTestStdout(), 148 EXPECT_THAT(GetCapturedStdout(),
145 HasSubstr("Uninteresting mock function call")); 149 HasSubstr("Uninteresting mock function call"));
146 } 150 }
147 151
148 #endif // 0 152 #endif // GTEST_HAS_STREAM_REDIRECTION_
149 153
150 // Tests that a nice mock allows expected calls. 154 // Tests that a nice mock allows expected calls.
151 TEST(NiceMockTest, AllowsExpectedCall) { 155 TEST(NiceMockTest, AllowsExpectedCall) {
152 NiceMock<MockFoo> nice_foo; 156 NiceMock<MockFoo> nice_foo;
153 157
154 EXPECT_CALL(nice_foo, DoThis()); 158 EXPECT_CALL(nice_foo, DoThis());
155 nice_foo.DoThis(); 159 nice_foo.DoThis();
156 } 160 }
157 161
158 // Tests that an unexpected call on a nice mock fails. 162 // Tests that an unexpected call on a nice mock fails.
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 // causes the program to crash there, for reasons unclear to us yet. 273 // causes the program to crash there, for reasons unclear to us yet.
270 TEST(StrictMockTest, AcceptsClassNamedMock) { 274 TEST(StrictMockTest, AcceptsClassNamedMock) {
271 StrictMock< ::Mock> strict; 275 StrictMock< ::Mock> strict;
272 EXPECT_CALL(strict, DoThis()); 276 EXPECT_CALL(strict, DoThis());
273 strict.DoThis(); 277 strict.DoThis();
274 } 278 }
275 #endif // !GTEST_OS_SYMBIAN && !GTEST_OS_WINDOWS_MOBILE 279 #endif // !GTEST_OS_SYMBIAN && !GTEST_OS_WINDOWS_MOBILE
276 280
277 } // namespace gmock_nice_strict_test 281 } // namespace gmock_nice_strict_test
278 } // namespace testing 282 } // namespace testing
OLDNEW
« no previous file with comments | « testing/gmock/test/gmock-matchers_test.cc ('k') | testing/gmock/test/gmock-printers_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698