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

Side by Side Diff: chromeos/dbus/gsm_sms_client_unittest.cc

Issue 1540803002: Switch to standard integer types in chromeos/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more includes Created 5 years 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 | « chromeos/dbus/gsm_sms_client.cc ('k') | chromeos/dbus/image_burner_client.h » ('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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chromeos/dbus/gsm_sms_client.h" 5 #include "chromeos/dbus/gsm_sms_client.h"
6 6
7 #include <stdint.h>
8
7 #include "base/bind.h" 9 #include "base/bind.h"
8 #include "base/location.h" 10 #include "base/location.h"
9 #include "base/message_loop/message_loop.h" 11 #include "base/message_loop/message_loop.h"
10 #include "base/single_thread_task_runner.h" 12 #include "base/single_thread_task_runner.h"
11 #include "base/values.h" 13 #include "base/values.h"
12 #include "dbus/message.h" 14 #include "dbus/message.h"
13 #include "dbus/mock_bus.h" 15 #include "dbus/mock_bus.h"
14 #include "dbus/mock_object_proxy.h" 16 #include "dbus/mock_object_proxy.h"
15 #include "dbus/object_path.h" 17 #include "dbus/object_path.h"
16 #include "dbus/values_util.h" 18 #include "dbus/values_util.h"
17 #include "testing/gmock/include/gmock/gmock.h" 19 #include "testing/gmock/include/gmock/gmock.h"
18 #include "testing/gtest/include/gtest/gtest.h" 20 #include "testing/gtest/include/gtest/gtest.h"
19 #include "third_party/cros_system_api/dbus/service_constants.h" 21 #include "third_party/cros_system_api/dbus/service_constants.h"
20 22
21 using ::testing::_; 23 using ::testing::_;
22 using ::testing::Invoke; 24 using ::testing::Invoke;
23 using ::testing::Return; 25 using ::testing::Return;
24 26
25 namespace chromeos { 27 namespace chromeos {
26 28
27 namespace { 29 namespace {
28 30
29 // A mock SmsReceivedHandler. 31 // A mock SmsReceivedHandler.
30 class MockSmsReceivedHandler { 32 class MockSmsReceivedHandler {
31 public: 33 public:
32 MOCK_METHOD2(Run, void(uint32 index, bool complete)); 34 MOCK_METHOD2(Run, void(uint32_t index, bool complete));
33 }; 35 };
34 36
35 // A mock DeleteCallback. 37 // A mock DeleteCallback.
36 class MockDeleteCallback { 38 class MockDeleteCallback {
37 public: 39 public:
38 MOCK_METHOD0(Run, void()); 40 MOCK_METHOD0(Run, void());
39 }; 41 };
40 42
41 // A mock GetCallback. 43 // A mock GetCallback.
42 class MockGetCallback { 44 class MockGetCallback {
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 109
108 void TearDown() override { mock_bus_->ShutdownAndBlock(); } 110 void TearDown() override { mock_bus_->ShutdownAndBlock(); }
109 111
110 // Handles Delete method call. 112 // Handles Delete method call.
111 void OnDelete(dbus::MethodCall* method_call, 113 void OnDelete(dbus::MethodCall* method_call,
112 int timeout_ms, 114 int timeout_ms,
113 const dbus::ObjectProxy::ResponseCallback& callback) { 115 const dbus::ObjectProxy::ResponseCallback& callback) {
114 EXPECT_EQ(modemmanager::kModemManagerSMSInterface, 116 EXPECT_EQ(modemmanager::kModemManagerSMSInterface,
115 method_call->GetInterface()); 117 method_call->GetInterface());
116 EXPECT_EQ(modemmanager::kSMSDeleteFunction, method_call->GetMember()); 118 EXPECT_EQ(modemmanager::kSMSDeleteFunction, method_call->GetMember());
117 uint32 index = 0; 119 uint32_t index = 0;
118 dbus::MessageReader reader(method_call); 120 dbus::MessageReader reader(method_call);
119 EXPECT_TRUE(reader.PopUint32(&index)); 121 EXPECT_TRUE(reader.PopUint32(&index));
120 EXPECT_EQ(expected_index_, index); 122 EXPECT_EQ(expected_index_, index);
121 EXPECT_FALSE(reader.HasMoreData()); 123 EXPECT_FALSE(reader.HasMoreData());
122 124
123 message_loop_.task_runner()->PostTask(FROM_HERE, 125 message_loop_.task_runner()->PostTask(FROM_HERE,
124 base::Bind(callback, response_)); 126 base::Bind(callback, response_));
125 } 127 }
126 128
127 // Handles Get method call. 129 // Handles Get method call.
128 void OnGet(dbus::MethodCall* method_call, 130 void OnGet(dbus::MethodCall* method_call,
129 int timeout_ms, 131 int timeout_ms,
130 const dbus::ObjectProxy::ResponseCallback& callback) { 132 const dbus::ObjectProxy::ResponseCallback& callback) {
131 EXPECT_EQ(modemmanager::kModemManagerSMSInterface, 133 EXPECT_EQ(modemmanager::kModemManagerSMSInterface,
132 method_call->GetInterface()); 134 method_call->GetInterface());
133 EXPECT_EQ(modemmanager::kSMSGetFunction, method_call->GetMember()); 135 EXPECT_EQ(modemmanager::kSMSGetFunction, method_call->GetMember());
134 uint32 index = 0; 136 uint32_t index = 0;
135 dbus::MessageReader reader(method_call); 137 dbus::MessageReader reader(method_call);
136 EXPECT_TRUE(reader.PopUint32(&index)); 138 EXPECT_TRUE(reader.PopUint32(&index));
137 EXPECT_EQ(expected_index_, index); 139 EXPECT_EQ(expected_index_, index);
138 EXPECT_FALSE(reader.HasMoreData()); 140 EXPECT_FALSE(reader.HasMoreData());
139 141
140 message_loop_.task_runner()->PostTask(FROM_HERE, 142 message_loop_.task_runner()->PostTask(FROM_HERE,
141 base::Bind(callback, response_)); 143 base::Bind(callback, response_));
142 } 144 }
143 145
144 // Handles List method call. 146 // Handles List method call.
(...skipping 20 matching lines...) Expand all
165 scoped_ptr<GsmSMSClient> client_; 167 scoped_ptr<GsmSMSClient> client_;
166 // A message loop to emulate asynchronous behavior. 168 // A message loop to emulate asynchronous behavior.
167 base::MessageLoop message_loop_; 169 base::MessageLoop message_loop_;
168 // The mock bus. 170 // The mock bus.
169 scoped_refptr<dbus::MockBus> mock_bus_; 171 scoped_refptr<dbus::MockBus> mock_bus_;
170 // The mock object proxy. 172 // The mock object proxy.
171 scoped_refptr<dbus::MockObjectProxy> mock_proxy_; 173 scoped_refptr<dbus::MockObjectProxy> mock_proxy_;
172 // The SmsReceived signal handler given by the tested client. 174 // The SmsReceived signal handler given by the tested client.
173 dbus::ObjectProxy::SignalCallback sms_received_callback_; 175 dbus::ObjectProxy::SignalCallback sms_received_callback_;
174 // Expected argument for Delete and Get methods. 176 // Expected argument for Delete and Get methods.
175 uint32 expected_index_; 177 uint32_t expected_index_;
176 // Response returned by mock methods. 178 // Response returned by mock methods.
177 dbus::Response* response_; 179 dbus::Response* response_;
178 // Expected result of Get and List methods. 180 // Expected result of Get and List methods.
179 base::Value* expected_result_; 181 base::Value* expected_result_;
180 182
181 private: 183 private:
182 // Used to implement the mock proxy. 184 // Used to implement the mock proxy.
183 void OnConnectToSignal( 185 void OnConnectToSignal(
184 const std::string& interface_name, 186 const std::string& interface_name,
185 const std::string& signal_name, 187 const std::string& signal_name,
186 const dbus::ObjectProxy::SignalCallback& signal_callback, 188 const dbus::ObjectProxy::SignalCallback& signal_callback,
187 const dbus::ObjectProxy::OnConnectedCallback& on_connected_callback) { 189 const dbus::ObjectProxy::OnConnectedCallback& on_connected_callback) {
188 sms_received_callback_ = signal_callback; 190 sms_received_callback_ = signal_callback;
189 const bool success = true; 191 const bool success = true;
190 message_loop_.task_runner()->PostTask( 192 message_loop_.task_runner()->PostTask(
191 FROM_HERE, base::Bind(on_connected_callback, interface_name, 193 FROM_HERE, base::Bind(on_connected_callback, interface_name,
192 signal_name, success)); 194 signal_name, success));
193 } 195 }
194 }; 196 };
195 197
196 TEST_F(GsmSMSClientTest, SmsReceived) { 198 TEST_F(GsmSMSClientTest, SmsReceived) {
197 // Set expectations. 199 // Set expectations.
198 const uint32 kIndex = 42; 200 const uint32_t kIndex = 42;
199 const bool kComplete = true; 201 const bool kComplete = true;
200 MockSmsReceivedHandler handler; 202 MockSmsReceivedHandler handler;
201 EXPECT_CALL(handler, Run(kIndex, kComplete)).Times(1); 203 EXPECT_CALL(handler, Run(kIndex, kComplete)).Times(1);
202 // Set handler. 204 // Set handler.
203 client_->SetSmsReceivedHandler(kServiceName, dbus::ObjectPath(kObjectPath), 205 client_->SetSmsReceivedHandler(kServiceName, dbus::ObjectPath(kObjectPath),
204 base::Bind(&MockSmsReceivedHandler::Run, 206 base::Bind(&MockSmsReceivedHandler::Run,
205 base::Unretained(&handler))); 207 base::Unretained(&handler)));
206 208
207 // Run the message loop to run the signal connection result callback. 209 // Run the message loop to run the signal connection result callback.
208 message_loop_.RunUntilIdle(); 210 message_loop_.RunUntilIdle();
209 211
210 // Send signal. 212 // Send signal.
211 dbus::Signal signal(modemmanager::kModemManagerSMSInterface, 213 dbus::Signal signal(modemmanager::kModemManagerSMSInterface,
212 modemmanager::kSMSReceivedSignal); 214 modemmanager::kSMSReceivedSignal);
213 dbus::MessageWriter writer(&signal); 215 dbus::MessageWriter writer(&signal);
214 writer.AppendUint32(kIndex); 216 writer.AppendUint32(kIndex);
215 writer.AppendBool(kComplete); 217 writer.AppendBool(kComplete);
216 ASSERT_FALSE(sms_received_callback_.is_null()); 218 ASSERT_FALSE(sms_received_callback_.is_null());
217 sms_received_callback_.Run(&signal); 219 sms_received_callback_.Run(&signal);
218 // Reset handler. 220 // Reset handler.
219 client_->ResetSmsReceivedHandler(kServiceName, dbus::ObjectPath(kObjectPath)); 221 client_->ResetSmsReceivedHandler(kServiceName, dbus::ObjectPath(kObjectPath));
220 // Send signal again. 222 // Send signal again.
221 sms_received_callback_.Run(&signal); 223 sms_received_callback_.Run(&signal);
222 } 224 }
223 225
224 TEST_F(GsmSMSClientTest, Delete) { 226 TEST_F(GsmSMSClientTest, Delete) {
225 // Set expectations. 227 // Set expectations.
226 const uint32 kIndex = 42; 228 const uint32_t kIndex = 42;
227 expected_index_ = kIndex; 229 expected_index_ = kIndex;
228 EXPECT_CALL(*mock_proxy_.get(), CallMethod(_, _, _)) 230 EXPECT_CALL(*mock_proxy_.get(), CallMethod(_, _, _))
229 .WillOnce(Invoke(this, &GsmSMSClientTest::OnDelete)); 231 .WillOnce(Invoke(this, &GsmSMSClientTest::OnDelete));
230 MockDeleteCallback callback; 232 MockDeleteCallback callback;
231 EXPECT_CALL(callback, Run()).Times(1); 233 EXPECT_CALL(callback, Run()).Times(1);
232 // Create response. 234 // Create response.
233 scoped_ptr<dbus::Response> response(dbus::Response::CreateEmpty()); 235 scoped_ptr<dbus::Response> response(dbus::Response::CreateEmpty());
234 response_ = response.get(); 236 response_ = response.get();
235 // Call Delete. 237 // Call Delete.
236 client_->Delete(kServiceName, dbus::ObjectPath(kObjectPath), kIndex, 238 client_->Delete(kServiceName, dbus::ObjectPath(kObjectPath), kIndex,
237 base::Bind(&MockDeleteCallback::Run, 239 base::Bind(&MockDeleteCallback::Run,
238 base::Unretained(&callback))); 240 base::Unretained(&callback)));
239 241
240 // Run the message loop. 242 // Run the message loop.
241 message_loop_.RunUntilIdle(); 243 message_loop_.RunUntilIdle();
242 } 244 }
243 245
244 TEST_F(GsmSMSClientTest, Get) { 246 TEST_F(GsmSMSClientTest, Get) {
245 // Set expectations. 247 // Set expectations.
246 const uint32 kIndex = 42; 248 const uint32_t kIndex = 42;
247 expected_index_ = kIndex; 249 expected_index_ = kIndex;
248 EXPECT_CALL(*mock_proxy_.get(), CallMethod(_, _, _)) 250 EXPECT_CALL(*mock_proxy_.get(), CallMethod(_, _, _))
249 .WillOnce(Invoke(this, &GsmSMSClientTest::OnGet)); 251 .WillOnce(Invoke(this, &GsmSMSClientTest::OnGet));
250 MockGetCallback callback; 252 MockGetCallback callback;
251 EXPECT_CALL(callback, Run(_)) 253 EXPECT_CALL(callback, Run(_))
252 .WillOnce(Invoke(this, &GsmSMSClientTest::CheckResult)); 254 .WillOnce(Invoke(this, &GsmSMSClientTest::CheckResult));
253 // Create response. 255 // Create response.
254 scoped_ptr<dbus::Response> response(dbus::Response::CreateEmpty()); 256 scoped_ptr<dbus::Response> response(dbus::Response::CreateEmpty());
255 dbus::MessageWriter writer(response.get()); 257 dbus::MessageWriter writer(response.get());
256 dbus::MessageWriter array_writer(NULL); 258 dbus::MessageWriter array_writer(NULL);
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 // Call List. 320 // Call List.
319 client_->List(kServiceName, dbus::ObjectPath(kObjectPath), 321 client_->List(kServiceName, dbus::ObjectPath(kObjectPath),
320 base::Bind(&MockListCallback::Run, 322 base::Bind(&MockListCallback::Run,
321 base::Unretained(&callback))); 323 base::Unretained(&callback)));
322 324
323 // Run the message loop. 325 // Run the message loop.
324 message_loop_.RunUntilIdle(); 326 message_loop_.RunUntilIdle();
325 } 327 }
326 328
327 } // namespace chromeos 329 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/dbus/gsm_sms_client.cc ('k') | chromeos/dbus/image_burner_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698