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

Side by Side Diff: device/bluetooth/bluetooth_adapter_chromeos_unittest.cc

Issue 11075006: Moved bluetooth adapter files to device/bluetooth/. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 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 | Annotate | Revision Log
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 "chrome/browser/chromeos/bluetooth/bluetooth_adapter.h"
6 #include "chrome/browser/chromeos/bluetooth/bluetooth_adapter_chromeos.h"
7 #include "chrome/browser/chromeos/bluetooth/bluetooth_adapter_factory.h"
8 #include "chrome/browser/chromeos/bluetooth/test/mock_bluetooth_adapter.h"
9 #include "chromeos/dbus/mock_bluetooth_adapter_client.h" 5 #include "chromeos/dbus/mock_bluetooth_adapter_client.h"
10 #include "chromeos/dbus/mock_bluetooth_manager_client.h" 6 #include "chromeos/dbus/mock_bluetooth_manager_client.h"
11 #include "chromeos/dbus/mock_dbus_thread_manager.h" 7 #include "chromeos/dbus/mock_dbus_thread_manager.h"
12 #include "dbus/object_path.h" 8 #include "dbus/object_path.h"
9 #include "device/bluetooth/bluetooth_adapter.h"
10 #include "device/bluetooth/bluetooth_adapter_chromeos.h"
11 #include "device/bluetooth/bluetooth_adapter_factory.h"
12 #include "device/bluetooth/test/mock_bluetooth_adapter.h"
13 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
14 14
15 using ::testing::_; 15 using ::testing::_;
16 using ::testing::InSequence; 16 using ::testing::InSequence;
17 using ::testing::Return; 17 using ::testing::Return;
18 using ::testing::SaveArg; 18 using ::testing::SaveArg;
19 19
20 namespace chromeos { 20 namespace device_bluetooth {
21 21
22 class BluetoothAdapterChromeOsTest : public testing::Test { 22 class BluetoothAdapterChromeOsTest : public testing::Test {
23 public: 23 public:
24 virtual void SetUp() { 24 virtual void SetUp() {
25 MockDBusThreadManager* mock_dbus_thread_manager = new MockDBusThreadManager; 25 chromeos::MockDBusThreadManager* mock_dbus_thread_manager =
26 new chromeos::MockDBusThreadManager;
26 27
27 EXPECT_CALL(*mock_dbus_thread_manager, GetSystemBus()) 28 EXPECT_CALL(*mock_dbus_thread_manager, GetSystemBus())
28 .WillRepeatedly(Return(reinterpret_cast<dbus::Bus*>(NULL))); 29 .WillRepeatedly(Return(reinterpret_cast<dbus::Bus*>(NULL)));
29 DBusThreadManager::InitializeForTesting(mock_dbus_thread_manager); 30 chromeos::DBusThreadManager::InitializeForTesting(mock_dbus_thread_manager);
30 31
31 mock_manager_client_ = 32 mock_manager_client_ =
32 mock_dbus_thread_manager->mock_bluetooth_manager_client(); 33 mock_dbus_thread_manager->mock_bluetooth_manager_client();
33 mock_adapter_client_ = 34 mock_adapter_client_ =
34 mock_dbus_thread_manager->mock_bluetooth_adapter_client(); 35 mock_dbus_thread_manager->mock_bluetooth_adapter_client();
35 36
36 set_callback_called_ = false; 37 set_callback_called_ = false;
37 error_callback_called_ = false; 38 error_callback_called_ = false;
38 } 39 }
39 40
40 virtual void TearDown() { 41 virtual void TearDown() {
41 DBusThreadManager::Shutdown(); 42 chromeos::DBusThreadManager::Shutdown();
42 } 43 }
43 44
44 void SetCallback() { 45 void SetCallback() {
45 set_callback_called_ = true; 46 set_callback_called_ = true;
46 } 47 }
47 48
48 void ErrorCallback() { 49 void ErrorCallback() {
49 error_callback_called_ = true; 50 error_callback_called_ = true;
50 } 51 }
51 52
52 protected: 53 protected:
53 MockBluetoothManagerClient* mock_manager_client_; 54 chromeos::MockBluetoothManagerClient* mock_manager_client_;
54 MockBluetoothAdapterClient* mock_adapter_client_; 55 chromeos::MockBluetoothAdapterClient* mock_adapter_client_;
55 56
56 bool set_callback_called_; 57 bool set_callback_called_;
57 bool error_callback_called_; 58 bool error_callback_called_;
58 }; 59 };
59 60
60 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterNotPresent) { 61 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterNotPresent) {
61 // Create the default adapter instance; 62 // Create the default adapter instance;
62 // BluetoothManagerClient::DefaultAdapter will be called once, passing 63 // BluetoothManagerClient::DefaultAdapter will be called once, passing
63 // a callback to obtain the adapter path. 64 // a callback to obtain the adapter path.
64 BluetoothManagerClient::AdapterCallback adapter_callback; 65 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
65 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 66 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
66 .WillOnce(SaveArg<0>(&adapter_callback)); 67 .WillOnce(SaveArg<0>(&adapter_callback));
67 68
68 scoped_refptr<BluetoothAdapter> adapter = 69 scoped_refptr<BluetoothAdapter> adapter =
69 BluetoothAdapterFactory::DefaultAdapter(); 70 BluetoothAdapterFactory::DefaultAdapter();
71 ASSERT_TRUE(adapter.get() != NULL);
70 72
71 // Call the adapter callback; make out it failed. 73 // Call the adapter callback; make out it failed.
72 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called. 74 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called.
73 MockBluetoothAdapter::Observer adapter_observer; 75 MockBluetoothAdapter::Observer adapter_observer;
74 adapter->AddObserver(&adapter_observer); 76 adapter->AddObserver(&adapter_observer);
75 77
76 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _)) 78 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _))
77 .Times(0); 79 .Times(0);
78 80
79 adapter_callback.Run(dbus::ObjectPath(""), false); 81 adapter_callback.Run(dbus::ObjectPath(""), false);
80 82
81 // Adapter should not be present. 83 // Adapter should not be present.
82 EXPECT_FALSE(adapter->IsPresent()); 84 EXPECT_FALSE(adapter->IsPresent());
83 } 85 }
84 86
85 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterWithAddress) { 87 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterWithAddress) {
86 const dbus::ObjectPath adapter_path("/fake/hci0"); 88 const dbus::ObjectPath adapter_path("/fake/hci0");
87 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 89 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
88 90
89 // Create the default adapter instance; 91 // Create the default adapter instance;
90 // BluetoothManagerClient::DefaultAdapter will be called once, passing 92 // BluetoothManagerClient::DefaultAdapter will be called once, passing
91 // a callback to obtain the adapter path. 93 // a callback to obtain the adapter path.
92 BluetoothManagerClient::AdapterCallback adapter_callback; 94 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
93 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 95 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
94 .WillOnce(SaveArg<0>(&adapter_callback)); 96 .WillOnce(SaveArg<0>(&adapter_callback));
95 97
96 scoped_refptr<BluetoothAdapter> adapter = 98 scoped_refptr<BluetoothAdapter> adapter =
97 BluetoothAdapterFactory::DefaultAdapter(); 99 BluetoothAdapterFactory::DefaultAdapter();
98 100
99 // Call the adapter callback; 101 // Call the adapter callback;
100 // BluetoothAdapterClient::GetProperties will be called once to obtain 102 // BluetoothAdapterClient::GetProperties will be called once to obtain
101 // the property set. 103 // the property set.
102 MockBluetoothAdapterClient::Properties adapter_properties; 104 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
103 adapter_properties.address.ReplaceValue(adapter_address); 105 adapter_properties.address.ReplaceValue(adapter_address);
104 106
105 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 107 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
106 .WillRepeatedly(Return(&adapter_properties)); 108 .WillRepeatedly(Return(&adapter_properties));
107 109
108 // BluetoothAdapter::Observer::AdapterPresentChanged will be called to 110 // BluetoothAdapter::Observer::AdapterPresentChanged will be called to
109 // indicate the adapter is now present. 111 // indicate the adapter is now present.
110 MockBluetoothAdapter::Observer adapter_observer; 112 MockBluetoothAdapter::Observer adapter_observer;
111 adapter->AddObserver(&adapter_observer); 113 adapter->AddObserver(&adapter_observer);
112 114
113 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 115 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
114 .Times(1); 116 .Times(1);
115 117
116 adapter_callback.Run(adapter_path, true); 118 adapter_callback.Run(adapter_path, true);
117 119
118 // Adapter should be present with the given address. 120 // Adapter should be present with the given address.
119 EXPECT_TRUE(adapter->IsPresent()); 121 EXPECT_TRUE(adapter->IsPresent());
120 EXPECT_EQ(adapter_address, adapter->address()); 122 EXPECT_EQ(adapter_address, adapter->address());
121 } 123 }
122 124
123 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterWithoutAddress) { 125 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterWithoutAddress) {
124 const dbus::ObjectPath adapter_path("/fake/hci0"); 126 const dbus::ObjectPath adapter_path("/fake/hci0");
125 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 127 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
126 128
127 // Create the default adapter instance; 129 // Create the default adapter instance;
128 // BluetoothManagerClient::DefaultAdapter will be called once, passing 130 // BluetoothManagerClient::DefaultAdapter will be called once, passing
129 // a callback to obtain the adapter path. 131 // a callback to obtain the adapter path.
130 BluetoothManagerClient::AdapterCallback adapter_callback; 132 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
131 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 133 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
132 .WillOnce(SaveArg<0>(&adapter_callback)); 134 .WillOnce(SaveArg<0>(&adapter_callback));
133 135
134 scoped_refptr<BluetoothAdapter> adapter = 136 scoped_refptr<BluetoothAdapter> adapter =
135 BluetoothAdapterFactory::DefaultAdapter(); 137 BluetoothAdapterFactory::DefaultAdapter();
136 138
137 // Call the adapter callback; 139 // Call the adapter callback;
138 // BluetoothAdapterClient::GetProperties will be called once to obtain 140 // BluetoothAdapterClient::GetProperties will be called once to obtain
139 // the property set. 141 // the property set.
140 MockBluetoothAdapterClient::Properties adapter_properties; 142 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
141 143
142 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 144 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
143 .WillRepeatedly(Return(&adapter_properties)); 145 .WillRepeatedly(Return(&adapter_properties));
144 146
145 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called 147 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called
146 // yet. 148 // yet.
147 MockBluetoothAdapter::Observer adapter_observer; 149 MockBluetoothAdapter::Observer adapter_observer;
148 adapter->AddObserver(&adapter_observer); 150 adapter->AddObserver(&adapter_observer);
149 151
150 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _)) 152 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _))
151 .Times(0); 153 .Times(0);
152 154
153 adapter_callback.Run(adapter_path, true); 155 adapter_callback.Run(adapter_path, true);
154 156
155 // Adapter should not be present yet. 157 // Adapter should not be present yet.
156 EXPECT_FALSE(adapter->IsPresent()); 158 EXPECT_FALSE(adapter->IsPresent());
157 159
158 // Tell the adapter the address now; 160 // Tell the adapter the address now;
159 // BluetoothAdapter::Observer::AdapterPresentChanged now must be called. 161 // BluetoothAdapter::Observer::AdapterPresentChanged now must be called.
160 adapter_properties.address.ReplaceValue(adapter_address); 162 adapter_properties.address.ReplaceValue(adapter_address);
161 163
162 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 164 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
163 .Times(1); 165 .Times(1);
164 166
165 BluetoothAdapterChromeOs* adapter_chromeos = 167 BluetoothAdapterChromeOs* adapter_chromeos =
166 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 168 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
167 169
168 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 170 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
169 ->AdapterPropertyChanged(adapter_path, 171 ->AdapterPropertyChanged(adapter_path,
170 adapter_properties.address.name()); 172 adapter_properties.address.name());
171 173
172 // Adapter should be present with the given address. 174 // Adapter should be present with the given address.
173 EXPECT_TRUE(adapter->IsPresent()); 175 EXPECT_TRUE(adapter->IsPresent());
174 EXPECT_EQ(adapter_address, adapter->address()); 176 EXPECT_EQ(adapter_address, adapter->address());
175 } 177 }
176 178
177 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterBecomesPresentWithAddress) { 179 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterBecomesPresentWithAddress) {
178 const dbus::ObjectPath adapter_path("/fake/hci0"); 180 const dbus::ObjectPath adapter_path("/fake/hci0");
179 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 181 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
180 182
181 // Create the default adapter instance; 183 // Create the default adapter instance;
182 // BluetoothManagerClient::DefaultAdapter will be called once, passing 184 // BluetoothManagerClient::DefaultAdapter will be called once, passing
183 // a callback to obtain the adapter path. 185 // a callback to obtain the adapter path.
184 BluetoothManagerClient::AdapterCallback adapter_callback; 186 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
185 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 187 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
186 .WillOnce(SaveArg<0>(&adapter_callback)); 188 .WillOnce(SaveArg<0>(&adapter_callback));
187 189
188 scoped_refptr<BluetoothAdapter> adapter = 190 scoped_refptr<BluetoothAdapter> adapter =
189 BluetoothAdapterFactory::DefaultAdapter(); 191 BluetoothAdapterFactory::DefaultAdapter();
190 192
191 // Call the adapter callback; make out it failed. 193 // Call the adapter callback; make out it failed.
192 adapter_callback.Run(dbus::ObjectPath(""), false); 194 adapter_callback.Run(dbus::ObjectPath(""), false);
193 195
194 // Tell the adapter the default adapter changed; 196 // Tell the adapter the default adapter changed;
195 // BluetoothAdapterClient::GetProperties will be called once to obtain 197 // BluetoothAdapterClient::GetProperties will be called once to obtain
196 // the property set. 198 // the property set.
197 MockBluetoothAdapterClient::Properties adapter_properties; 199 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
198 adapter_properties.address.ReplaceValue(adapter_address); 200 adapter_properties.address.ReplaceValue(adapter_address);
199 201
200 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 202 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
201 .WillRepeatedly(Return(&adapter_properties)); 203 .WillRepeatedly(Return(&adapter_properties));
202 204
203 // BluetoothAdapter::Observer::AdapterPresentChanged must be called. 205 // BluetoothAdapter::Observer::AdapterPresentChanged must be called.
204 MockBluetoothAdapter::Observer adapter_observer; 206 MockBluetoothAdapter::Observer adapter_observer;
205 adapter->AddObserver(&adapter_observer); 207 adapter->AddObserver(&adapter_observer);
206 208
207 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 209 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
208 .Times(1); 210 .Times(1);
209 211
210 BluetoothAdapterChromeOs* adapter_chromeos = 212 BluetoothAdapterChromeOs* adapter_chromeos =
211 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 213 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
212 214
213 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 215 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
214 ->DefaultAdapterChanged(adapter_path); 216 ->DefaultAdapterChanged(adapter_path);
215 217
216 // Adapter should be present with the new address. 218 // Adapter should be present with the new address.
217 EXPECT_TRUE(adapter->IsPresent()); 219 EXPECT_TRUE(adapter->IsPresent());
218 EXPECT_EQ(adapter_address, adapter->address()); 220 EXPECT_EQ(adapter_address, adapter->address());
219 } 221 }
220 222
221 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterReplacedWithAddress) { 223 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterReplacedWithAddress) {
222 const dbus::ObjectPath initial_adapter_path("/fake/hci0"); 224 const dbus::ObjectPath initial_adapter_path("/fake/hci0");
223 const dbus::ObjectPath new_adapter_path("/fake/hci1"); 225 const dbus::ObjectPath new_adapter_path("/fake/hci1");
224 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE"; 226 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE";
225 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE"; 227 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE";
226 228
227 // Create the default adapter instance; 229 // Create the default adapter instance;
228 // BluetoothManagerClient::DefaultAdapter will be called once, passing 230 // BluetoothManagerClient::DefaultAdapter will be called once, passing
229 // a callback to obtain the adapter path. 231 // a callback to obtain the adapter path.
230 BluetoothManagerClient::AdapterCallback adapter_callback; 232 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
231 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 233 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
232 .WillOnce(SaveArg<0>(&adapter_callback)); 234 .WillOnce(SaveArg<0>(&adapter_callback));
233 235
234 scoped_refptr<BluetoothAdapter> adapter = 236 scoped_refptr<BluetoothAdapter> adapter =
235 BluetoothAdapterFactory::DefaultAdapter(); 237 BluetoothAdapterFactory::DefaultAdapter();
236 238
237 // Call the adapter callback; 239 // Call the adapter callback;
238 // BluetoothAdapterClient::GetProperties will be called once to obtain 240 // BluetoothAdapterClient::GetProperties will be called once to obtain
239 // the property set. 241 // the property set.
240 MockBluetoothAdapterClient::Properties initial_adapter_properties; 242 chromeos::MockBluetoothAdapterClient::Properties initial_adapter_properties;
241 initial_adapter_properties.address.ReplaceValue(initial_adapter_address); 243 initial_adapter_properties.address.ReplaceValue(initial_adapter_address);
242 244
243 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path)) 245 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path))
244 .WillRepeatedly(Return(&initial_adapter_properties)); 246 .WillRepeatedly(Return(&initial_adapter_properties));
245 247
246 adapter_callback.Run(initial_adapter_path, true); 248 adapter_callback.Run(initial_adapter_path, true);
247 249
248 // Tell the adapter the default adapter changed; 250 // Tell the adapter the default adapter changed;
249 // BluetoothAdapterClient::GetProperties will be called once to obtain 251 // BluetoothAdapterClient::GetProperties will be called once to obtain
250 // the property set. 252 // the property set.
251 MockBluetoothAdapterClient::Properties new_adapter_properties; 253 chromeos::MockBluetoothAdapterClient::Properties new_adapter_properties;
252 new_adapter_properties.address.ReplaceValue(new_adapter_address); 254 new_adapter_properties.address.ReplaceValue(new_adapter_address);
253 255
254 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path)) 256 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path))
255 .WillRepeatedly(Return(&new_adapter_properties)); 257 .WillRepeatedly(Return(&new_adapter_properties));
256 258
257 // BluetoothAdapter::Observer::AdapterPresentChanged must be called once 259 // BluetoothAdapter::Observer::AdapterPresentChanged must be called once
258 // with false to indicate the old adapter being removed and once with true 260 // with false to indicate the old adapter being removed and once with true
259 // to announce the new adapter. 261 // to announce the new adapter.
260 MockBluetoothAdapter::Observer adapter_observer; 262 MockBluetoothAdapter::Observer adapter_observer;
261 adapter->AddObserver(&adapter_observer); 263 adapter->AddObserver(&adapter_observer);
262 264
263 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 265 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
264 .Times(1); 266 .Times(1);
265 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 267 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
266 .Times(1); 268 .Times(1);
267 269
268 BluetoothAdapterChromeOs* adapter_chromeos = 270 BluetoothAdapterChromeOs* adapter_chromeos =
269 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 271 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
270 272
271 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 273 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
272 ->DefaultAdapterChanged(new_adapter_path); 274 ->DefaultAdapterChanged(new_adapter_path);
273 275
274 // Adapter should be present with the new address. 276 // Adapter should be present with the new address.
275 EXPECT_TRUE(adapter->IsPresent()); 277 EXPECT_TRUE(adapter->IsPresent());
276 EXPECT_EQ(new_adapter_address, adapter->address()); 278 EXPECT_EQ(new_adapter_address, adapter->address());
277 } 279 }
278 280
279 TEST_F(BluetoothAdapterChromeOsTest, 281 TEST_F(BluetoothAdapterChromeOsTest,
280 DefaultAdapterBecomesPresentWithoutAddress) { 282 DefaultAdapterBecomesPresentWithoutAddress) {
281 const dbus::ObjectPath adapter_path("/fake/hci0"); 283 const dbus::ObjectPath adapter_path("/fake/hci0");
282 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 284 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
283 285
284 // Create the default adapter instance; 286 // Create the default adapter instance;
285 // BluetoothManagerClient::DefaultAdapter will be called once, passing 287 // BluetoothManagerClient::DefaultAdapter will be called once, passing
286 // a callback to obtain the adapter path. 288 // a callback to obtain the adapter path.
287 BluetoothManagerClient::AdapterCallback adapter_callback; 289 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
288 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 290 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
289 .WillOnce(SaveArg<0>(&adapter_callback)); 291 .WillOnce(SaveArg<0>(&adapter_callback));
290 292
291 scoped_refptr<BluetoothAdapter> adapter = 293 scoped_refptr<BluetoothAdapter> adapter =
292 BluetoothAdapterFactory::DefaultAdapter(); 294 BluetoothAdapterFactory::DefaultAdapter();
293 295
294 // Call the adapter callback; make out it failed. 296 // Call the adapter callback; make out it failed.
295 adapter_callback.Run(dbus::ObjectPath(""), false); 297 adapter_callback.Run(dbus::ObjectPath(""), false);
296 298
297 // Tell the adapter the default adapter changed; 299 // Tell the adapter the default adapter changed;
298 // BluetoothAdapterClient::GetProperties will be called once to obtain 300 // BluetoothAdapterClient::GetProperties will be called once to obtain
299 // the property set. 301 // the property set.
300 MockBluetoothAdapterClient::Properties adapter_properties; 302 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
301 303
302 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 304 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
303 .WillRepeatedly(Return(&adapter_properties)); 305 .WillRepeatedly(Return(&adapter_properties));
304 306
305 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called. 307 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called.
306 MockBluetoothAdapter::Observer adapter_observer; 308 MockBluetoothAdapter::Observer adapter_observer;
307 adapter->AddObserver(&adapter_observer); 309 adapter->AddObserver(&adapter_observer);
308 310
309 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _)) 311 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _))
310 .Times(0); 312 .Times(0);
311 313
312 BluetoothAdapterChromeOs* adapter_chromeos = 314 BluetoothAdapterChromeOs* adapter_chromeos =
313 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 315 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
314 316
315 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 317 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
316 ->DefaultAdapterChanged(adapter_path); 318 ->DefaultAdapterChanged(adapter_path);
317 319
318 // Adapter should not be present yet. 320 // Adapter should not be present yet.
319 EXPECT_FALSE(adapter->IsPresent()); 321 EXPECT_FALSE(adapter->IsPresent());
320 322
321 // Tell the adapter the address now; 323 // Tell the adapter the address now;
322 // BluetoothAdapter::Observer::AdapterPresentChanged now must be called. 324 // BluetoothAdapter::Observer::AdapterPresentChanged now must be called.
323 adapter_properties.address.ReplaceValue(adapter_address); 325 adapter_properties.address.ReplaceValue(adapter_address);
324 326
325 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 327 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
326 .Times(1); 328 .Times(1);
327 329
328 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 330 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
329 ->AdapterPropertyChanged(adapter_path, 331 ->AdapterPropertyChanged(adapter_path,
330 adapter_properties.address.name()); 332 adapter_properties.address.name());
331 333
332 // Adapter should be present with the new address. 334 // Adapter should be present with the new address.
333 EXPECT_TRUE(adapter->IsPresent()); 335 EXPECT_TRUE(adapter->IsPresent());
334 EXPECT_EQ(adapter_address, adapter->address()); 336 EXPECT_EQ(adapter_address, adapter->address());
335 } 337 }
336 338
337 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterReplacedWithoutAddress) { 339 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterReplacedWithoutAddress) {
338 const dbus::ObjectPath initial_adapter_path("/fake/hci0"); 340 const dbus::ObjectPath initial_adapter_path("/fake/hci0");
339 const dbus::ObjectPath new_adapter_path("/fake/hci1"); 341 const dbus::ObjectPath new_adapter_path("/fake/hci1");
340 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE"; 342 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE";
341 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE"; 343 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE";
342 344
343 // Create the default adapter instance; 345 // Create the default adapter instance;
344 // BluetoothManagerClient::DefaultAdapter will be called once, passing 346 // BluetoothManagerClient::DefaultAdapter will be called once, passing
345 // a callback to obtain the adapter path. 347 // a callback to obtain the adapter path.
346 BluetoothManagerClient::AdapterCallback adapter_callback; 348 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
347 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 349 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
348 .WillOnce(SaveArg<0>(&adapter_callback)); 350 .WillOnce(SaveArg<0>(&adapter_callback));
349 351
350 scoped_refptr<BluetoothAdapter> adapter = 352 scoped_refptr<BluetoothAdapter> adapter =
351 BluetoothAdapterFactory::DefaultAdapter(); 353 BluetoothAdapterFactory::DefaultAdapter();
352 354
353 // Call the adapter callback; 355 // Call the adapter callback;
354 // BluetoothAdapterClient::GetProperties will be called once to obtain 356 // BluetoothAdapterClient::GetProperties will be called once to obtain
355 // the property set. 357 // the property set.
356 MockBluetoothAdapterClient::Properties initial_adapter_properties; 358 chromeos::MockBluetoothAdapterClient::Properties initial_adapter_properties;
357 initial_adapter_properties.address.ReplaceValue(initial_adapter_address); 359 initial_adapter_properties.address.ReplaceValue(initial_adapter_address);
358 360
359 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path)) 361 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path))
360 .WillRepeatedly(Return(&initial_adapter_properties)); 362 .WillRepeatedly(Return(&initial_adapter_properties));
361 363
362 adapter_callback.Run(initial_adapter_path, true); 364 adapter_callback.Run(initial_adapter_path, true);
363 365
364 // Tell the adapter the default adapter changed; 366 // Tell the adapter the default adapter changed;
365 // BluetoothAdapterClient::GetProperties will be called once to obtain 367 // BluetoothAdapterClient::GetProperties will be called once to obtain
366 // the property set. 368 // the property set.
367 MockBluetoothAdapterClient::Properties new_adapter_properties; 369 chromeos::MockBluetoothAdapterClient::Properties new_adapter_properties;
368 370
369 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path)) 371 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path))
370 .WillRepeatedly(Return(&new_adapter_properties)); 372 .WillRepeatedly(Return(&new_adapter_properties));
371 373
372 // BluetoothAdapter::Observer::AdapterPresentChanged must be called to 374 // BluetoothAdapter::Observer::AdapterPresentChanged must be called to
373 // indicate the adapter has gone away. 375 // indicate the adapter has gone away.
374 MockBluetoothAdapter::Observer adapter_observer; 376 MockBluetoothAdapter::Observer adapter_observer;
375 adapter->AddObserver(&adapter_observer); 377 adapter->AddObserver(&adapter_observer);
376 378
377 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 379 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
378 .Times(1); 380 .Times(1);
379 381
380 BluetoothAdapterChromeOs* adapter_chromeos = 382 BluetoothAdapterChromeOs* adapter_chromeos =
381 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 383 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
382 384
383 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 385 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
384 ->DefaultAdapterChanged(new_adapter_path); 386 ->DefaultAdapterChanged(new_adapter_path);
385 387
386 // Adapter should be now marked not present. 388 // Adapter should be now marked not present.
387 EXPECT_FALSE(adapter->IsPresent()); 389 EXPECT_FALSE(adapter->IsPresent());
388 390
389 // Tell the adapter the address now; 391 // Tell the adapter the address now;
390 // BluetoothAdapter::Observer::AdapterPresentChanged now must be called. 392 // BluetoothAdapter::Observer::AdapterPresentChanged now must be called.
391 new_adapter_properties.address.ReplaceValue(new_adapter_address); 393 new_adapter_properties.address.ReplaceValue(new_adapter_address);
392 394
393 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 395 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
394 .Times(1); 396 .Times(1);
395 397
396 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 398 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
397 ->AdapterPropertyChanged(new_adapter_path, 399 ->AdapterPropertyChanged(new_adapter_path,
398 new_adapter_properties.address.name()); 400 new_adapter_properties.address.name());
399 401
400 // Adapter should be present with the new address. 402 // Adapter should be present with the new address.
401 EXPECT_TRUE(adapter->IsPresent()); 403 EXPECT_TRUE(adapter->IsPresent());
402 EXPECT_EQ(new_adapter_address, adapter->address()); 404 EXPECT_EQ(new_adapter_address, adapter->address());
403 } 405 }
404 406
405 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterRemoved) { 407 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterRemoved) {
406 const dbus::ObjectPath adapter_path("/fake/hci0"); 408 const dbus::ObjectPath adapter_path("/fake/hci0");
407 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 409 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
408 410
409 // Create the default adapter instance; 411 // Create the default adapter instance;
410 // BluetoothManagerClient::DefaultAdapter will be called once, passing 412 // BluetoothManagerClient::DefaultAdapter will be called once, passing
411 // a callback to obtain the adapter path. 413 // a callback to obtain the adapter path.
412 BluetoothManagerClient::AdapterCallback adapter_callback; 414 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
413 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 415 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
414 .WillOnce(SaveArg<0>(&adapter_callback)); 416 .WillOnce(SaveArg<0>(&adapter_callback));
415 417
416 scoped_refptr<BluetoothAdapter> adapter = 418 scoped_refptr<BluetoothAdapter> adapter =
417 BluetoothAdapterFactory::DefaultAdapter(); 419 BluetoothAdapterFactory::DefaultAdapter();
418 420
419 // Call the adapter callback; 421 // Call the adapter callback;
420 // BluetoothAdapterClient::GetProperties will be called once to obtain 422 // BluetoothAdapterClient::GetProperties will be called once to obtain
421 // the property set. 423 // the property set.
422 MockBluetoothAdapterClient::Properties adapter_properties; 424 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
423 adapter_properties.address.ReplaceValue(adapter_address); 425 adapter_properties.address.ReplaceValue(adapter_address);
424 426
425 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 427 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
426 .WillRepeatedly(Return(&adapter_properties)); 428 .WillRepeatedly(Return(&adapter_properties));
427 429
428 adapter_callback.Run(adapter_path, true); 430 adapter_callback.Run(adapter_path, true);
429 431
430 // Report that the adapter has been removed; 432 // Report that the adapter has been removed;
431 // BluetoothAdapter::Observer::AdapterPresentChanged will be called to 433 // BluetoothAdapter::Observer::AdapterPresentChanged will be called to
432 // indicate the adapter is no longer present. 434 // indicate the adapter is no longer present.
433 MockBluetoothAdapter::Observer adapter_observer; 435 MockBluetoothAdapter::Observer adapter_observer;
434 adapter->AddObserver(&adapter_observer); 436 adapter->AddObserver(&adapter_observer);
435 437
436 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 438 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
437 .Times(1); 439 .Times(1);
438 440
439 BluetoothAdapterChromeOs* adapter_chromeos = 441 BluetoothAdapterChromeOs* adapter_chromeos =
440 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 442 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
441 443
442 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 444 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
443 ->AdapterRemoved(adapter_path); 445 ->AdapterRemoved(adapter_path);
444 446
445 // Adapter should be no longer present. 447 // Adapter should be no longer present.
446 EXPECT_FALSE(adapter->IsPresent()); 448 EXPECT_FALSE(adapter->IsPresent());
447 } 449 }
448 450
449 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterWithoutAddressRemoved) { 451 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterWithoutAddressRemoved) {
450 const dbus::ObjectPath adapter_path("/fake/hci0"); 452 const dbus::ObjectPath adapter_path("/fake/hci0");
451 453
452 // Create the default adapter instance; 454 // Create the default adapter instance;
453 // BluetoothManagerClient::DefaultAdapter will be called once, passing 455 // BluetoothManagerClient::DefaultAdapter will be called once, passing
454 // a callback to obtain the adapter path. 456 // a callback to obtain the adapter path.
455 BluetoothManagerClient::AdapterCallback adapter_callback; 457 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
456 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 458 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
457 .WillOnce(SaveArg<0>(&adapter_callback)); 459 .WillOnce(SaveArg<0>(&adapter_callback));
458 460
459 scoped_refptr<BluetoothAdapter> adapter = 461 scoped_refptr<BluetoothAdapter> adapter =
460 BluetoothAdapterFactory::DefaultAdapter(); 462 BluetoothAdapterFactory::DefaultAdapter();
461 463
462 // Call the adapter callback; 464 // Call the adapter callback;
463 // BluetoothAdapterClient::GetProperties will be called once to obtain 465 // BluetoothAdapterClient::GetProperties will be called once to obtain
464 // the property set. 466 // the property set.
465 MockBluetoothAdapterClient::Properties adapter_properties; 467 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
466 468
467 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 469 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
468 .WillRepeatedly(Return(&adapter_properties)); 470 .WillRepeatedly(Return(&adapter_properties));
469 471
470 adapter_callback.Run(adapter_path, true); 472 adapter_callback.Run(adapter_path, true);
471 473
472 // Report that the adapter has been removed; 474 // Report that the adapter has been removed;
473 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called 475 // BluetoothAdapter::Observer::AdapterPresentChanged must not be called
474 // since we never should have announced it in the first place. 476 // since we never should have announced it in the first place.
475 MockBluetoothAdapter::Observer adapter_observer; 477 MockBluetoothAdapter::Observer adapter_observer;
476 adapter->AddObserver(&adapter_observer); 478 adapter->AddObserver(&adapter_observer);
477 479
478 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _)) 480 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), _))
479 .Times(0); 481 .Times(0);
480 482
481 BluetoothAdapterChromeOs* adapter_chromeos = 483 BluetoothAdapterChromeOs* adapter_chromeos =
482 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 484 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
483 485
484 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 486 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
485 ->AdapterRemoved(adapter_path); 487 ->AdapterRemoved(adapter_path);
486 488
487 // Adapter should be still no longer present. 489 // Adapter should be still no longer present.
488 EXPECT_FALSE(adapter->IsPresent()); 490 EXPECT_FALSE(adapter->IsPresent());
489 } 491 }
490 492
491 TEST_F(BluetoothAdapterChromeOsTest, 493 TEST_F(BluetoothAdapterChromeOsTest,
492 DefaultAdapterPoweredPropertyInitiallyFalse) { 494 DefaultAdapterPoweredPropertyInitiallyFalse) {
493 const dbus::ObjectPath adapter_path("/fake/hci0"); 495 const dbus::ObjectPath adapter_path("/fake/hci0");
494 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 496 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
495 497
496 // Create the default adapter instance; 498 // Create the default adapter instance;
497 // BluetoothManagerClient::DefaultAdapter will be called once, passing 499 // BluetoothManagerClient::DefaultAdapter will be called once, passing
498 // a callback to obtain the adapter path. 500 // a callback to obtain the adapter path.
499 BluetoothManagerClient::AdapterCallback adapter_callback; 501 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
500 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 502 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
501 .WillOnce(SaveArg<0>(&adapter_callback)); 503 .WillOnce(SaveArg<0>(&adapter_callback));
502 504
503 scoped_refptr<BluetoothAdapter> adapter = 505 scoped_refptr<BluetoothAdapter> adapter =
504 BluetoothAdapterFactory::DefaultAdapter(); 506 BluetoothAdapterFactory::DefaultAdapter();
505 507
506 // Call the adapter callback; 508 // Call the adapter callback;
507 // BluetoothAdapterClient::GetProperties will be called once to obtain 509 // BluetoothAdapterClient::GetProperties will be called once to obtain
508 // the property set. 510 // the property set.
509 MockBluetoothAdapterClient::Properties adapter_properties; 511 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
510 adapter_properties.address.ReplaceValue(adapter_address); 512 adapter_properties.address.ReplaceValue(adapter_address);
511 adapter_properties.powered.ReplaceValue(false); 513 adapter_properties.powered.ReplaceValue(false);
512 514
513 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 515 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
514 .WillRepeatedly(Return(&adapter_properties)); 516 .WillRepeatedly(Return(&adapter_properties));
515 517
516 adapter_callback.Run(adapter_path, true); 518 adapter_callback.Run(adapter_path, true);
517 519
518 // Adapter should have the correct property value. 520 // Adapter should have the correct property value.
519 EXPECT_FALSE(adapter->IsPowered()); 521 EXPECT_FALSE(adapter->IsPowered());
520 } 522 }
521 523
522 TEST_F(BluetoothAdapterChromeOsTest, 524 TEST_F(BluetoothAdapterChromeOsTest,
523 DefaultAdapterPoweredPropertyInitiallyTrue) { 525 DefaultAdapterPoweredPropertyInitiallyTrue) {
524 const dbus::ObjectPath adapter_path("/fake/hci0"); 526 const dbus::ObjectPath adapter_path("/fake/hci0");
525 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 527 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
526 528
527 // Create the default adapter instance; 529 // Create the default adapter instance;
528 // BluetoothManagerClient::DefaultAdapter will be called once, passing 530 // BluetoothManagerClient::DefaultAdapter will be called once, passing
529 // a callback to obtain the adapter path. 531 // a callback to obtain the adapter path.
530 BluetoothManagerClient::AdapterCallback adapter_callback; 532 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
531 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 533 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
532 .WillOnce(SaveArg<0>(&adapter_callback)); 534 .WillOnce(SaveArg<0>(&adapter_callback));
533 535
534 scoped_refptr<BluetoothAdapter> adapter = 536 scoped_refptr<BluetoothAdapter> adapter =
535 BluetoothAdapterFactory::DefaultAdapter(); 537 BluetoothAdapterFactory::DefaultAdapter();
536 538
537 // Call the adapter callback; 539 // Call the adapter callback;
538 // BluetoothAdapterClient::GetProperties will be called once to obtain 540 // BluetoothAdapterClient::GetProperties will be called once to obtain
539 // the property set. 541 // the property set.
540 MockBluetoothAdapterClient::Properties adapter_properties; 542 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
541 adapter_properties.address.ReplaceValue(adapter_address); 543 adapter_properties.address.ReplaceValue(adapter_address);
542 adapter_properties.powered.ReplaceValue(true); 544 adapter_properties.powered.ReplaceValue(true);
543 545
544 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 546 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
545 .WillRepeatedly(Return(&adapter_properties)); 547 .WillRepeatedly(Return(&adapter_properties));
546 548
547 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called. 549 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called.
548 MockBluetoothAdapter::Observer adapter_observer; 550 MockBluetoothAdapter::Observer adapter_observer;
549 adapter->AddObserver(&adapter_observer); 551 adapter->AddObserver(&adapter_observer);
550 552
(...skipping 10 matching lines...) Expand all
561 } 563 }
562 564
563 TEST_F(BluetoothAdapterChromeOsTest, 565 TEST_F(BluetoothAdapterChromeOsTest,
564 DefaultAdapterPoweredPropertyInitiallyTrueWithoutAddress) { 566 DefaultAdapterPoweredPropertyInitiallyTrueWithoutAddress) {
565 const dbus::ObjectPath adapter_path("/fake/hci0"); 567 const dbus::ObjectPath adapter_path("/fake/hci0");
566 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 568 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
567 569
568 // Create the default adapter instance; 570 // Create the default adapter instance;
569 // BluetoothManagerClient::DefaultAdapter will be called once, passing 571 // BluetoothManagerClient::DefaultAdapter will be called once, passing
570 // a callback to obtain the adapter path. 572 // a callback to obtain the adapter path.
571 BluetoothManagerClient::AdapterCallback adapter_callback; 573 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
572 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 574 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
573 .WillOnce(SaveArg<0>(&adapter_callback)); 575 .WillOnce(SaveArg<0>(&adapter_callback));
574 576
575 scoped_refptr<BluetoothAdapter> adapter = 577 scoped_refptr<BluetoothAdapter> adapter =
576 BluetoothAdapterFactory::DefaultAdapter(); 578 BluetoothAdapterFactory::DefaultAdapter();
577 579
578 // Call the adapter callback; 580 // Call the adapter callback;
579 // BluetoothAdapterClient::GetProperties will be called once to obtain 581 // BluetoothAdapterClient::GetProperties will be called once to obtain
580 // the property set but BluetoothAdapter::Observer::AdapterPoweredChanged 582 // the property set but BluetoothAdapter::Observer::AdapterPoweredChanged
581 // should not yet be called. 583 // should not yet be called.
582 MockBluetoothAdapterClient::Properties adapter_properties; 584 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
583 adapter_properties.powered.ReplaceValue(true); 585 adapter_properties.powered.ReplaceValue(true);
584 586
585 MockBluetoothAdapter::Observer adapter_observer; 587 MockBluetoothAdapter::Observer adapter_observer;
586 adapter->AddObserver(&adapter_observer); 588 adapter->AddObserver(&adapter_observer);
587 589
588 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 590 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
589 .WillRepeatedly(Return(&adapter_properties)); 591 .WillRepeatedly(Return(&adapter_properties));
590 592
591 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _)) 593 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _))
592 .Times(0); 594 .Times(0);
(...skipping 10 matching lines...) Expand all
603 605
604 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 606 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
605 .Times(1); 607 .Times(1);
606 608
607 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true)) 609 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true))
608 .Times(1); 610 .Times(1);
609 611
610 BluetoothAdapterChromeOs* adapter_chromeos = 612 BluetoothAdapterChromeOs* adapter_chromeos =
611 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 613 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
612 614
613 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 615 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
614 ->AdapterPropertyChanged(adapter_path, 616 ->AdapterPropertyChanged(adapter_path,
615 adapter_properties.address.name()); 617 adapter_properties.address.name());
616 618
617 // Adapter should have the correct property value. 619 // Adapter should have the correct property value.
618 EXPECT_TRUE(adapter->IsPowered()); 620 EXPECT_TRUE(adapter->IsPowered());
619 } 621 }
620 622
621 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterPoweredPropertyChanged) { 623 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterPoweredPropertyChanged) {
622 const dbus::ObjectPath adapter_path("/fake/hci0"); 624 const dbus::ObjectPath adapter_path("/fake/hci0");
623 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 625 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
624 626
625 // Create the default adapter instance; 627 // Create the default adapter instance;
626 // BluetoothManagerClient::DefaultAdapter will be called once, passing 628 // BluetoothManagerClient::DefaultAdapter will be called once, passing
627 // a callback to obtain the adapter path. 629 // a callback to obtain the adapter path.
628 BluetoothManagerClient::AdapterCallback adapter_callback; 630 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
629 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 631 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
630 .WillOnce(SaveArg<0>(&adapter_callback)); 632 .WillOnce(SaveArg<0>(&adapter_callback));
631 633
632 scoped_refptr<BluetoothAdapter> adapter = 634 scoped_refptr<BluetoothAdapter> adapter =
633 BluetoothAdapterFactory::DefaultAdapter(); 635 BluetoothAdapterFactory::DefaultAdapter();
634 636
635 // Call the adapter callback; 637 // Call the adapter callback;
636 // BluetoothAdapterClient::GetProperties will be called once to obtain 638 // BluetoothAdapterClient::GetProperties will be called once to obtain
637 // the property set. 639 // the property set.
638 MockBluetoothAdapterClient::Properties adapter_properties; 640 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
639 adapter_properties.address.ReplaceValue(adapter_address); 641 adapter_properties.address.ReplaceValue(adapter_address);
640 adapter_properties.powered.ReplaceValue(false); 642 adapter_properties.powered.ReplaceValue(false);
641 643
642 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 644 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
643 .WillRepeatedly(Return(&adapter_properties)); 645 .WillRepeatedly(Return(&adapter_properties));
644 646
645 adapter_callback.Run(adapter_path, true); 647 adapter_callback.Run(adapter_path, true);
646 648
647 // Adapter should have the correct property value. 649 // Adapter should have the correct property value.
648 EXPECT_FALSE(adapter->IsPowered()); 650 EXPECT_FALSE(adapter->IsPowered());
649 651
650 // Report that the property has been changed; 652 // Report that the property has been changed;
651 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called. 653 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called.
652 MockBluetoothAdapter::Observer adapter_observer; 654 MockBluetoothAdapter::Observer adapter_observer;
653 adapter->AddObserver(&adapter_observer); 655 adapter->AddObserver(&adapter_observer);
654 656
655 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true)) 657 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true))
656 .Times(1); 658 .Times(1);
657 659
658 adapter_properties.powered.ReplaceValue(true); 660 adapter_properties.powered.ReplaceValue(true);
659 661
660 BluetoothAdapterChromeOs* adapter_chromeos = 662 BluetoothAdapterChromeOs* adapter_chromeos =
661 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 663 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
662 664
663 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 665 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
664 ->AdapterPropertyChanged(adapter_path, 666 ->AdapterPropertyChanged(adapter_path,
665 adapter_properties.powered.name()); 667 adapter_properties.powered.name());
666 668
667 // Adapter should have the new property values. 669 // Adapter should have the new property values.
668 EXPECT_TRUE(adapter->IsPowered()); 670 EXPECT_TRUE(adapter->IsPowered());
669 } 671 }
670 672
671 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterPoweredPropertyUnchanged) { 673 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterPoweredPropertyUnchanged) {
672 const dbus::ObjectPath adapter_path("/fake/hci0"); 674 const dbus::ObjectPath adapter_path("/fake/hci0");
673 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 675 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
674 676
675 // Create the default adapter instance; 677 // Create the default adapter instance;
676 // BluetoothManagerClient::DefaultAdapter will be called once, passing 678 // BluetoothManagerClient::DefaultAdapter will be called once, passing
677 // a callback to obtain the adapter path. 679 // a callback to obtain the adapter path.
678 BluetoothManagerClient::AdapterCallback adapter_callback; 680 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
679 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 681 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
680 .WillOnce(SaveArg<0>(&adapter_callback)); 682 .WillOnce(SaveArg<0>(&adapter_callback));
681 683
682 scoped_refptr<BluetoothAdapter> adapter = 684 scoped_refptr<BluetoothAdapter> adapter =
683 BluetoothAdapterFactory::DefaultAdapter(); 685 BluetoothAdapterFactory::DefaultAdapter();
684 686
685 // Call the adapter callback; 687 // Call the adapter callback;
686 // BluetoothAdapterClient::GetProperties will be called once to obtain 688 // BluetoothAdapterClient::GetProperties will be called once to obtain
687 // the property set. 689 // the property set.
688 MockBluetoothAdapterClient::Properties adapter_properties; 690 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
689 adapter_properties.address.ReplaceValue(adapter_address); 691 adapter_properties.address.ReplaceValue(adapter_address);
690 adapter_properties.powered.ReplaceValue(true); 692 adapter_properties.powered.ReplaceValue(true);
691 693
692 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 694 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
693 .WillRepeatedly(Return(&adapter_properties)); 695 .WillRepeatedly(Return(&adapter_properties));
694 696
695 adapter_callback.Run(adapter_path, true); 697 adapter_callback.Run(adapter_path, true);
696 698
697 // Adapter should have the correct property value. 699 // Adapter should have the correct property value.
698 EXPECT_TRUE(adapter->IsPowered()); 700 EXPECT_TRUE(adapter->IsPowered());
699 701
700 // Report that the property has been changed, but don't change the value; 702 // Report that the property has been changed, but don't change the value;
701 // BluetoothAdapter::Observer::AdapterPoweredChanged should not be called. 703 // BluetoothAdapter::Observer::AdapterPoweredChanged should not be called.
702 MockBluetoothAdapter::Observer adapter_observer; 704 MockBluetoothAdapter::Observer adapter_observer;
703 adapter->AddObserver(&adapter_observer); 705 adapter->AddObserver(&adapter_observer);
704 706
705 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _)) 707 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _))
706 .Times(0); 708 .Times(0);
707 709
708 BluetoothAdapterChromeOs* adapter_chromeos = 710 BluetoothAdapterChromeOs* adapter_chromeos =
709 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 711 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
710 712
711 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 713 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
712 ->AdapterPropertyChanged(adapter_path, 714 ->AdapterPropertyChanged(adapter_path,
713 adapter_properties.powered.name()); 715 adapter_properties.powered.name());
714 716
715 // Adapter should still have the same property values. 717 // Adapter should still have the same property values.
716 EXPECT_TRUE(adapter->IsPowered()); 718 EXPECT_TRUE(adapter->IsPowered());
717 } 719 }
718 720
719 TEST_F(BluetoothAdapterChromeOsTest, 721 TEST_F(BluetoothAdapterChromeOsTest,
720 DefaultAdapterPoweredPropertyChangedWithoutAddress) { 722 DefaultAdapterPoweredPropertyChangedWithoutAddress) {
721 const dbus::ObjectPath adapter_path("/fake/hci0"); 723 const dbus::ObjectPath adapter_path("/fake/hci0");
722 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 724 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
723 725
724 // Create the default adapter instance; 726 // Create the default adapter instance;
725 // BluetoothManagerClient::DefaultAdapter will be called once, passing 727 // BluetoothManagerClient::DefaultAdapter will be called once, passing
726 // a callback to obtain the adapter path. 728 // a callback to obtain the adapter path.
727 BluetoothManagerClient::AdapterCallback adapter_callback; 729 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
728 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 730 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
729 .WillOnce(SaveArg<0>(&adapter_callback)); 731 .WillOnce(SaveArg<0>(&adapter_callback));
730 732
731 scoped_refptr<BluetoothAdapter> adapter = 733 scoped_refptr<BluetoothAdapter> adapter =
732 BluetoothAdapterFactory::DefaultAdapter(); 734 BluetoothAdapterFactory::DefaultAdapter();
733 735
734 // Call the adapter callback; 736 // Call the adapter callback;
735 // BluetoothAdapterClient::GetProperties will be called once to obtain 737 // BluetoothAdapterClient::GetProperties will be called once to obtain
736 // the property set but BluetoothAdapter::Observer::AdapterPoweredChanged 738 // the property set but BluetoothAdapter::Observer::AdapterPoweredChanged
737 // should not yet be called. 739 // should not yet be called.
738 MockBluetoothAdapterClient::Properties adapter_properties; 740 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
739 741
740 MockBluetoothAdapter::Observer adapter_observer; 742 MockBluetoothAdapter::Observer adapter_observer;
741 adapter->AddObserver(&adapter_observer); 743 adapter->AddObserver(&adapter_observer);
742 744
743 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 745 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
744 .WillRepeatedly(Return(&adapter_properties)); 746 .WillRepeatedly(Return(&adapter_properties));
745 747
746 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _)) 748 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _))
747 .Times(0); 749 .Times(0);
748 750
749 adapter_callback.Run(adapter_path, true); 751 adapter_callback.Run(adapter_path, true);
750 752
751 // Tell the adapter that its powered property changed, the observer 753 // Tell the adapter that its powered property changed, the observer
752 // method should still not be called because there is no address for 754 // method should still not be called because there is no address for
753 // the adapter so it is not present. 755 // the adapter so it is not present.
754 adapter_properties.powered.ReplaceValue(true); 756 adapter_properties.powered.ReplaceValue(true);
755 757
756 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _)) 758 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), _))
757 .Times(0); 759 .Times(0);
758 760
759 BluetoothAdapterChromeOs* adapter_chromeos = 761 BluetoothAdapterChromeOs* adapter_chromeos =
760 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 762 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
761 763
762 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 764 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
763 ->AdapterPropertyChanged(adapter_path, 765 ->AdapterPropertyChanged(adapter_path,
764 adapter_properties.powered.name()); 766 adapter_properties.powered.name());
765 767
766 // Adapter should not yet have the property value. 768 // Adapter should not yet have the property value.
767 EXPECT_FALSE(adapter->IsPowered()); 769 EXPECT_FALSE(adapter->IsPowered());
768 770
769 // Tell the adapter the address now, 771 // Tell the adapter the address now,
770 // BluetoothAdapter::Observer::AdapterPresentChanged and 772 // BluetoothAdapter::Observer::AdapterPresentChanged and
771 // BluetoothAdapter::Observer::AdapterPoweredChanged now must be called. 773 // BluetoothAdapter::Observer::AdapterPoweredChanged now must be called.
772 adapter_properties.address.ReplaceValue(adapter_address); 774 adapter_properties.address.ReplaceValue(adapter_address);
773 775
774 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 776 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
775 .Times(1); 777 .Times(1);
776 778
777 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true)) 779 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true))
778 .Times(1); 780 .Times(1);
779 781
780 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 782 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
781 ->AdapterPropertyChanged(adapter_path, 783 ->AdapterPropertyChanged(adapter_path,
782 adapter_properties.address.name()); 784 adapter_properties.address.name());
783 785
784 // Adapter should now have the correct property value. 786 // Adapter should now have the correct property value.
785 EXPECT_TRUE(adapter->IsPowered()); 787 EXPECT_TRUE(adapter->IsPowered());
786 } 788 }
787 789
788 TEST_F(BluetoothAdapterChromeOsTest, 790 TEST_F(BluetoothAdapterChromeOsTest,
789 DefaultAdapterPoweredPropertyResetOnReplace) { 791 DefaultAdapterPoweredPropertyResetOnReplace) {
790 const dbus::ObjectPath initial_adapter_path("/fake/hci0"); 792 const dbus::ObjectPath initial_adapter_path("/fake/hci0");
791 const dbus::ObjectPath new_adapter_path("/fake/hci1"); 793 const dbus::ObjectPath new_adapter_path("/fake/hci1");
792 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE"; 794 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE";
793 const std::string new_adapter_address = "00:C0:11:CO:FE:FE"; 795 const std::string new_adapter_address = "00:C0:11:CO:FE:FE";
794 796
795 // Create the default adapter instance; 797 // Create the default adapter instance;
796 // BluetoothManagerClient::DefaultAdapter will be called once, passing 798 // BluetoothManagerClient::DefaultAdapter will be called once, passing
797 // a callback to obtain the adapter path. 799 // a callback to obtain the adapter path.
798 BluetoothManagerClient::AdapterCallback adapter_callback; 800 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
799 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 801 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
800 .WillOnce(SaveArg<0>(&adapter_callback)); 802 .WillOnce(SaveArg<0>(&adapter_callback));
801 803
802 scoped_refptr<BluetoothAdapter> adapter = 804 scoped_refptr<BluetoothAdapter> adapter =
803 BluetoothAdapterFactory::DefaultAdapter(); 805 BluetoothAdapterFactory::DefaultAdapter();
804 806
805 // Call the adapter callback; 807 // Call the adapter callback;
806 // BluetoothAdapterClient::GetProperties will be called once to obtain 808 // BluetoothAdapterClient::GetProperties will be called once to obtain
807 // the property set. 809 // the property set.
808 MockBluetoothAdapterClient::Properties initial_adapter_properties; 810 chromeos::MockBluetoothAdapterClient::Properties initial_adapter_properties;
809 initial_adapter_properties.address.ReplaceValue(initial_adapter_address); 811 initial_adapter_properties.address.ReplaceValue(initial_adapter_address);
810 initial_adapter_properties.powered.ReplaceValue(true); 812 initial_adapter_properties.powered.ReplaceValue(true);
811 813
812 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path)) 814 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path))
813 .WillRepeatedly(Return(&initial_adapter_properties)); 815 .WillRepeatedly(Return(&initial_adapter_properties));
814 816
815 adapter_callback.Run(initial_adapter_path, true); 817 adapter_callback.Run(initial_adapter_path, true);
816 818
817 // Tell the adapter the default adapter changed; 819 // Tell the adapter the default adapter changed;
818 // BluetoothAdapterClient::GetProperties will be called once to obtain 820 // BluetoothAdapterClient::GetProperties will be called once to obtain
819 // the property set. 821 // the property set.
820 MockBluetoothAdapterClient::Properties new_adapter_properties; 822 chromeos::MockBluetoothAdapterClient::Properties new_adapter_properties;
821 new_adapter_properties.address.ReplaceValue(new_adapter_address); 823 new_adapter_properties.address.ReplaceValue(new_adapter_address);
822 824
823 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path)) 825 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path))
824 .WillRepeatedly(Return(&new_adapter_properties)); 826 .WillRepeatedly(Return(&new_adapter_properties));
825 827
826 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called. 828 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called.
827 MockBluetoothAdapter::Observer adapter_observer; 829 MockBluetoothAdapter::Observer adapter_observer;
828 adapter->AddObserver(&adapter_observer); 830 adapter->AddObserver(&adapter_observer);
829 831
830 { 832 {
831 InSequence s; 833 InSequence s;
832 834
833 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 835 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
834 .Times(1); 836 .Times(1);
835 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 837 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
836 .Times(1); 838 .Times(1);
837 } 839 }
838 840
839 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), false)) 841 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), false))
840 .Times(1); 842 .Times(1);
841 843
842 BluetoothAdapterChromeOs* adapter_chromeos = 844 BluetoothAdapterChromeOs* adapter_chromeos =
843 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 845 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
844 846
845 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 847 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
846 ->DefaultAdapterChanged(new_adapter_path); 848 ->DefaultAdapterChanged(new_adapter_path);
847 849
848 // Adapter should have the new property value. 850 // Adapter should have the new property value.
849 EXPECT_FALSE(adapter->IsPowered()); 851 EXPECT_FALSE(adapter->IsPowered());
850 } 852 }
851 853
852 TEST_F(BluetoothAdapterChromeOsTest, 854 TEST_F(BluetoothAdapterChromeOsTest,
853 DefaultAdapterPoweredPropertyResetOnReplaceWhenTrue) { 855 DefaultAdapterPoweredPropertyResetOnReplaceWhenTrue) {
854 const dbus::ObjectPath initial_adapter_path("/fake/hci0"); 856 const dbus::ObjectPath initial_adapter_path("/fake/hci0");
855 const dbus::ObjectPath new_adapter_path("/fake/hci1"); 857 const dbus::ObjectPath new_adapter_path("/fake/hci1");
856 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE"; 858 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE";
857 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE"; 859 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE";
858 860
859 // Create the default adapter instance; 861 // Create the default adapter instance;
860 // BluetoothManagerClient::DefaultAdapter will be called once, passing 862 // BluetoothManagerClient::DefaultAdapter will be called once, passing
861 // a callback to obtain the adapter path. 863 // a callback to obtain the adapter path.
862 BluetoothManagerClient::AdapterCallback adapter_callback; 864 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
863 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 865 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
864 .WillOnce(SaveArg<0>(&adapter_callback)); 866 .WillOnce(SaveArg<0>(&adapter_callback));
865 867
866 scoped_refptr<BluetoothAdapter> adapter = 868 scoped_refptr<BluetoothAdapter> adapter =
867 BluetoothAdapterFactory::DefaultAdapter(); 869 BluetoothAdapterFactory::DefaultAdapter();
868 870
869 // Call the adapter callback; 871 // Call the adapter callback;
870 // BluetoothAdapterClient::GetProperties will be called once to obtain 872 // BluetoothAdapterClient::GetProperties will be called once to obtain
871 // the property set. 873 // the property set.
872 MockBluetoothAdapterClient::Properties initial_adapter_properties; 874 chromeos::MockBluetoothAdapterClient::Properties initial_adapter_properties;
873 initial_adapter_properties.address.ReplaceValue(initial_adapter_address); 875 initial_adapter_properties.address.ReplaceValue(initial_adapter_address);
874 initial_adapter_properties.powered.ReplaceValue(true); 876 initial_adapter_properties.powered.ReplaceValue(true);
875 877
876 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path)) 878 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path))
877 .WillRepeatedly(Return(&initial_adapter_properties)); 879 .WillRepeatedly(Return(&initial_adapter_properties));
878 880
879 adapter_callback.Run(initial_adapter_path, true); 881 adapter_callback.Run(initial_adapter_path, true);
880 882
881 // Tell the adapter the default adapter changed; 883 // Tell the adapter the default adapter changed;
882 // BluetoothAdapterClient::GetProperties will be called once to obtain 884 // BluetoothAdapterClient::GetProperties will be called once to obtain
883 // the property set. 885 // the property set.
884 MockBluetoothAdapterClient::Properties new_adapter_properties; 886 chromeos::MockBluetoothAdapterClient::Properties new_adapter_properties;
885 new_adapter_properties.address.ReplaceValue(new_adapter_address); 887 new_adapter_properties.address.ReplaceValue(new_adapter_address);
886 new_adapter_properties.powered.ReplaceValue(true); 888 new_adapter_properties.powered.ReplaceValue(true);
887 889
888 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path)) 890 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path))
889 .WillRepeatedly(Return(&new_adapter_properties)); 891 .WillRepeatedly(Return(&new_adapter_properties));
890 892
891 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called once 893 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called once
892 // to set the value to false for the previous adapter and once to set the 894 // to set the value to false for the previous adapter and once to set the
893 // value to true for the new adapter. 895 // value to true for the new adapter.
894 MockBluetoothAdapter::Observer adapter_observer; 896 MockBluetoothAdapter::Observer adapter_observer;
(...skipping 13 matching lines...) Expand all
908 910
909 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), false)) 911 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), false))
910 .Times(1); 912 .Times(1);
911 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true)) 913 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), true))
912 .Times(1); 914 .Times(1);
913 } 915 }
914 916
915 BluetoothAdapterChromeOs* adapter_chromeos = 917 BluetoothAdapterChromeOs* adapter_chromeos =
916 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 918 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
917 919
918 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 920 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
919 ->DefaultAdapterChanged(new_adapter_path); 921 ->DefaultAdapterChanged(new_adapter_path);
920 922
921 // Adapter should have the new property value. 923 // Adapter should have the new property value.
922 EXPECT_TRUE(adapter->IsPowered()); 924 EXPECT_TRUE(adapter->IsPowered());
923 } 925 }
924 926
925 TEST_F(BluetoothAdapterChromeOsTest, 927 TEST_F(BluetoothAdapterChromeOsTest,
926 DefaultAdapterPoweredPropertyResetOnRemove) { 928 DefaultAdapterPoweredPropertyResetOnRemove) {
927 const dbus::ObjectPath adapter_path("/fake/hci0"); 929 const dbus::ObjectPath adapter_path("/fake/hci0");
928 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 930 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
929 931
930 // Create the default adapter instance; 932 // Create the default adapter instance;
931 // BluetoothManagerClient::DefaultAdapter will be called once, passing 933 // BluetoothManagerClient::DefaultAdapter will be called once, passing
932 // a callback to obtain the adapter path. 934 // a callback to obtain the adapter path.
933 BluetoothManagerClient::AdapterCallback adapter_callback; 935 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
934 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 936 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
935 .WillOnce(SaveArg<0>(&adapter_callback)); 937 .WillOnce(SaveArg<0>(&adapter_callback));
936 938
937 scoped_refptr<BluetoothAdapter> adapter = 939 scoped_refptr<BluetoothAdapter> adapter =
938 BluetoothAdapterFactory::DefaultAdapter(); 940 BluetoothAdapterFactory::DefaultAdapter();
939 941
940 // Call the adapter callback; 942 // Call the adapter callback;
941 // BluetoothAdapterClient::GetProperties will be called once to obtain 943 // BluetoothAdapterClient::GetProperties will be called once to obtain
942 // the property set. 944 // the property set.
943 MockBluetoothAdapterClient::Properties adapter_properties; 945 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
944 adapter_properties.address.ReplaceValue(adapter_address); 946 adapter_properties.address.ReplaceValue(adapter_address);
945 adapter_properties.powered.ReplaceValue(true); 947 adapter_properties.powered.ReplaceValue(true);
946 948
947 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 949 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
948 .WillRepeatedly(Return(&adapter_properties)); 950 .WillRepeatedly(Return(&adapter_properties));
949 951
950 adapter_callback.Run(adapter_path, true); 952 adapter_callback.Run(adapter_path, true);
951 953
952 // Report that the adapter has been removed; 954 // Report that the adapter has been removed;
953 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called. 955 // BluetoothAdapter::Observer::AdapterPoweredChanged will be called.
954 MockBluetoothAdapter::Observer adapter_observer; 956 MockBluetoothAdapter::Observer adapter_observer;
955 adapter->AddObserver(&adapter_observer); 957 adapter->AddObserver(&adapter_observer);
956 958
957 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 959 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
958 .Times(1); 960 .Times(1);
959 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), false)) 961 EXPECT_CALL(adapter_observer, AdapterPoweredChanged(adapter.get(), false))
960 .Times(1); 962 .Times(1);
961 963
962 BluetoothAdapterChromeOs* adapter_chromeos = 964 BluetoothAdapterChromeOs* adapter_chromeos =
963 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 965 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
964 966
965 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 967 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
966 ->AdapterRemoved(adapter_path); 968 ->AdapterRemoved(adapter_path);
967 969
968 // Adapter should have the new property value. 970 // Adapter should have the new property value.
969 EXPECT_FALSE(adapter->IsPowered()); 971 EXPECT_FALSE(adapter->IsPowered());
970 } 972 }
971 973
972 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterSetPowered) { 974 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterSetPowered) {
973 const dbus::ObjectPath adapter_path("/fake/hci0"); 975 const dbus::ObjectPath adapter_path("/fake/hci0");
974 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 976 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
975 977
976 // Create the default adapter instance; 978 // Create the default adapter instance;
977 // BluetoothManagerClient::DefaultAdapter will be called once, passing 979 // BluetoothManagerClient::DefaultAdapter will be called once, passing
978 // a callback to obtain the adapter path. 980 // a callback to obtain the adapter path.
979 BluetoothManagerClient::AdapterCallback adapter_callback; 981 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
980 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 982 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
981 .WillOnce(SaveArg<0>(&adapter_callback)); 983 .WillOnce(SaveArg<0>(&adapter_callback));
982 984
983 scoped_refptr<BluetoothAdapter> adapter = 985 scoped_refptr<BluetoothAdapter> adapter =
984 BluetoothAdapterFactory::DefaultAdapter(); 986 BluetoothAdapterFactory::DefaultAdapter();
985 987
986 // Call the adapter callback; 988 // Call the adapter callback;
987 // BluetoothAdapterClient::GetProperties will be called once to obtain 989 // BluetoothAdapterClient::GetProperties will be called once to obtain
988 // the property set. 990 // the property set.
989 MockBluetoothAdapterClient::Properties adapter_properties; 991 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
990 992
991 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 993 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
992 .WillRepeatedly(Return(&adapter_properties)); 994 .WillRepeatedly(Return(&adapter_properties));
993 995
994 adapter_callback.Run(adapter_path, true); 996 adapter_callback.Run(adapter_path, true);
995 997
996 // Request that the powered property be changed; 998 // Request that the powered property be changed;
997 // MockBluetoothAdapterClient::Set should be called, passing the address 999 // MockBluetoothAdapterClient::Set should be called, passing the address
998 // of the powered property and a callback to receive the response. 1000 // of the powered property and a callback to receive the response.
999 dbus::PropertySet::SetCallback set_callback; 1001 dbus::PropertySet::SetCallback set_callback;
(...skipping 17 matching lines...) Expand all
1017 EXPECT_FALSE(error_callback_called_); 1019 EXPECT_FALSE(error_callback_called_);
1018 } 1020 }
1019 1021
1020 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterSetPoweredError) { 1022 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterSetPoweredError) {
1021 const dbus::ObjectPath adapter_path("/fake/hci0"); 1023 const dbus::ObjectPath adapter_path("/fake/hci0");
1022 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1024 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1023 1025
1024 // Create the default adapter instance; 1026 // Create the default adapter instance;
1025 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1027 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1026 // a callback to obtain the adapter path. 1028 // a callback to obtain the adapter path.
1027 BluetoothManagerClient::AdapterCallback adapter_callback; 1029 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1028 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1030 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1029 .WillOnce(SaveArg<0>(&adapter_callback)); 1031 .WillOnce(SaveArg<0>(&adapter_callback));
1030 1032
1031 scoped_refptr<BluetoothAdapter> adapter = 1033 scoped_refptr<BluetoothAdapter> adapter =
1032 BluetoothAdapterFactory::DefaultAdapter(); 1034 BluetoothAdapterFactory::DefaultAdapter();
1033 1035
1034 // Call the adapter callback; 1036 // Call the adapter callback;
1035 // BluetoothAdapterClient::GetProperties will be called once to obtain 1037 // BluetoothAdapterClient::GetProperties will be called once to obtain
1036 // the property set. 1038 // the property set.
1037 MockBluetoothAdapterClient::Properties adapter_properties; 1039 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1038 1040
1039 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1041 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1040 .WillRepeatedly(Return(&adapter_properties)); 1042 .WillRepeatedly(Return(&adapter_properties));
1041 1043
1042 adapter_callback.Run(adapter_path, true); 1044 adapter_callback.Run(adapter_path, true);
1043 1045
1044 // Request that the powered property be changed; 1046 // Request that the powered property be changed;
1045 // MockBluetoothAdapterClient::Set should be called, passing the address 1047 // MockBluetoothAdapterClient::Set should be called, passing the address
1046 // of the powered property and a callback to receive the response. 1048 // of the powered property and a callback to receive the response.
1047 dbus::PropertySet::SetCallback set_callback; 1049 dbus::PropertySet::SetCallback set_callback;
(...skipping 18 matching lines...) Expand all
1066 } 1068 }
1067 1069
1068 TEST_F(BluetoothAdapterChromeOsTest, 1070 TEST_F(BluetoothAdapterChromeOsTest,
1069 DefaultAdapterDiscoveringPropertyInitiallyFalse) { 1071 DefaultAdapterDiscoveringPropertyInitiallyFalse) {
1070 const dbus::ObjectPath adapter_path("/fake/hci0"); 1072 const dbus::ObjectPath adapter_path("/fake/hci0");
1071 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1073 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1072 1074
1073 // Create the default adapter instance; 1075 // Create the default adapter instance;
1074 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1076 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1075 // a callback to obtain the adapter path. 1077 // a callback to obtain the adapter path.
1076 BluetoothManagerClient::AdapterCallback adapter_callback; 1078 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1077 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1079 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1078 .WillOnce(SaveArg<0>(&adapter_callback)); 1080 .WillOnce(SaveArg<0>(&adapter_callback));
1079 1081
1080 scoped_refptr<BluetoothAdapter> adapter = 1082 scoped_refptr<BluetoothAdapter> adapter =
1081 BluetoothAdapterFactory::DefaultAdapter(); 1083 BluetoothAdapterFactory::DefaultAdapter();
1082 1084
1083 // Call the adapter callback; 1085 // Call the adapter callback;
1084 // BluetoothAdapterClient::GetProperties will be called once to obtain 1086 // BluetoothAdapterClient::GetProperties will be called once to obtain
1085 // the property set. 1087 // the property set.
1086 MockBluetoothAdapterClient::Properties adapter_properties; 1088 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1087 adapter_properties.address.ReplaceValue(adapter_address); 1089 adapter_properties.address.ReplaceValue(adapter_address);
1088 adapter_properties.discovering.ReplaceValue(false); 1090 adapter_properties.discovering.ReplaceValue(false);
1089 1091
1090 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1092 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1091 .WillRepeatedly(Return(&adapter_properties)); 1093 .WillRepeatedly(Return(&adapter_properties));
1092 1094
1093 adapter_callback.Run(adapter_path, true); 1095 adapter_callback.Run(adapter_path, true);
1094 1096
1095 // Adapter should have the correct property value. 1097 // Adapter should have the correct property value.
1096 EXPECT_FALSE(adapter->IsDiscovering()); 1098 EXPECT_FALSE(adapter->IsDiscovering());
1097 } 1099 }
1098 1100
1099 TEST_F(BluetoothAdapterChromeOsTest, 1101 TEST_F(BluetoothAdapterChromeOsTest,
1100 DefaultAdapterDiscoveringPropertyInitiallyTrue) { 1102 DefaultAdapterDiscoveringPropertyInitiallyTrue) {
1101 const dbus::ObjectPath adapter_path("/fake/hci0"); 1103 const dbus::ObjectPath adapter_path("/fake/hci0");
1102 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1104 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1103 1105
1104 // Create the default adapter instance; 1106 // Create the default adapter instance;
1105 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1107 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1106 // a callback to obtain the adapter path. 1108 // a callback to obtain the adapter path.
1107 BluetoothManagerClient::AdapterCallback adapter_callback; 1109 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1108 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1110 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1109 .WillOnce(SaveArg<0>(&adapter_callback)); 1111 .WillOnce(SaveArg<0>(&adapter_callback));
1110 1112
1111 scoped_refptr<BluetoothAdapter> adapter = 1113 scoped_refptr<BluetoothAdapter> adapter =
1112 BluetoothAdapterFactory::DefaultAdapter(); 1114 BluetoothAdapterFactory::DefaultAdapter();
1113 1115
1114 // Call the adapter callback; 1116 // Call the adapter callback;
1115 // BluetoothAdapterClient::GetProperties will be called once to obtain 1117 // BluetoothAdapterClient::GetProperties will be called once to obtain
1116 // the property set. 1118 // the property set.
1117 MockBluetoothAdapterClient::Properties adapter_properties; 1119 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1118 adapter_properties.address.ReplaceValue(adapter_address); 1120 adapter_properties.address.ReplaceValue(adapter_address);
1119 adapter_properties.discovering.ReplaceValue(true); 1121 adapter_properties.discovering.ReplaceValue(true);
1120 1122
1121 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1123 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1122 .WillRepeatedly(Return(&adapter_properties)); 1124 .WillRepeatedly(Return(&adapter_properties));
1123 1125
1124 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called. 1126 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called.
1125 MockBluetoothAdapter::Observer adapter_observer; 1127 MockBluetoothAdapter::Observer adapter_observer;
1126 adapter->AddObserver(&adapter_observer); 1128 adapter->AddObserver(&adapter_observer);
1127 1129
(...skipping 10 matching lines...) Expand all
1138 } 1140 }
1139 1141
1140 TEST_F(BluetoothAdapterChromeOsTest, 1142 TEST_F(BluetoothAdapterChromeOsTest,
1141 DefaultAdapterDiscoveringPropertyInitiallyTrueWithoutAddress) { 1143 DefaultAdapterDiscoveringPropertyInitiallyTrueWithoutAddress) {
1142 const dbus::ObjectPath adapter_path("/fake/hci0"); 1144 const dbus::ObjectPath adapter_path("/fake/hci0");
1143 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1145 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1144 1146
1145 // Create the default adapter instance; 1147 // Create the default adapter instance;
1146 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1148 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1147 // a callback to obtain the adapter path. 1149 // a callback to obtain the adapter path.
1148 BluetoothManagerClient::AdapterCallback adapter_callback; 1150 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1149 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1151 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1150 .WillOnce(SaveArg<0>(&adapter_callback)); 1152 .WillOnce(SaveArg<0>(&adapter_callback));
1151 1153
1152 scoped_refptr<BluetoothAdapter> adapter = 1154 scoped_refptr<BluetoothAdapter> adapter =
1153 BluetoothAdapterFactory::DefaultAdapter(); 1155 BluetoothAdapterFactory::DefaultAdapter();
1154 1156
1155 // Call the adapter callback; 1157 // Call the adapter callback;
1156 // BluetoothAdapterClient::GetProperties will be called once to obtain 1158 // BluetoothAdapterClient::GetProperties will be called once to obtain
1157 // the property set but BluetoothAdapter::Observer::AdapterDiscoveringChanged 1159 // the property set but BluetoothAdapter::Observer::AdapterDiscoveringChanged
1158 // should not yet be called. 1160 // should not yet be called.
1159 MockBluetoothAdapterClient::Properties adapter_properties; 1161 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1160 adapter_properties.discovering.ReplaceValue(true); 1162 adapter_properties.discovering.ReplaceValue(true);
1161 1163
1162 MockBluetoothAdapter::Observer adapter_observer; 1164 MockBluetoothAdapter::Observer adapter_observer;
1163 adapter->AddObserver(&adapter_observer); 1165 adapter->AddObserver(&adapter_observer);
1164 1166
1165 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1167 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1166 .WillRepeatedly(Return(&adapter_properties)); 1168 .WillRepeatedly(Return(&adapter_properties));
1167 1169
1168 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _)) 1170 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _))
1169 .Times(0); 1171 .Times(0);
(...skipping 10 matching lines...) Expand all
1180 1182
1181 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 1183 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
1182 .Times(1); 1184 .Times(1);
1183 1185
1184 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), true)) 1186 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), true))
1185 .Times(1); 1187 .Times(1);
1186 1188
1187 BluetoothAdapterChromeOs* adapter_chromeos = 1189 BluetoothAdapterChromeOs* adapter_chromeos =
1188 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1190 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1189 1191
1190 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 1192 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
1191 ->AdapterPropertyChanged(adapter_path, 1193 ->AdapterPropertyChanged(adapter_path,
1192 adapter_properties.address.name()); 1194 adapter_properties.address.name());
1193 1195
1194 // Adapter should have the correct property value. 1196 // Adapter should have the correct property value.
1195 EXPECT_TRUE(adapter->IsDiscovering()); 1197 EXPECT_TRUE(adapter->IsDiscovering());
1196 } 1198 }
1197 1199
1198 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterDiscoveringPropertyChanged) { 1200 TEST_F(BluetoothAdapterChromeOsTest, DefaultAdapterDiscoveringPropertyChanged) {
1199 const dbus::ObjectPath adapter_path("/fake/hci0"); 1201 const dbus::ObjectPath adapter_path("/fake/hci0");
1200 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1202 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1201 1203
1202 // Create the default adapter instance; 1204 // Create the default adapter instance;
1203 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1205 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1204 // a callback to obtain the adapter path. 1206 // a callback to obtain the adapter path.
1205 BluetoothManagerClient::AdapterCallback adapter_callback; 1207 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1206 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1208 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1207 .WillOnce(SaveArg<0>(&adapter_callback)); 1209 .WillOnce(SaveArg<0>(&adapter_callback));
1208 1210
1209 scoped_refptr<BluetoothAdapter> adapter = 1211 scoped_refptr<BluetoothAdapter> adapter =
1210 BluetoothAdapterFactory::DefaultAdapter(); 1212 BluetoothAdapterFactory::DefaultAdapter();
1211 1213
1212 // Call the adapter callback; 1214 // Call the adapter callback;
1213 // BluetoothAdapterClient::GetProperties will be called once to obtain 1215 // BluetoothAdapterClient::GetProperties will be called once to obtain
1214 // the property set. 1216 // the property set.
1215 MockBluetoothAdapterClient::Properties adapter_properties; 1217 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1216 adapter_properties.address.ReplaceValue(adapter_address); 1218 adapter_properties.address.ReplaceValue(adapter_address);
1217 adapter_properties.discovering.ReplaceValue(false); 1219 adapter_properties.discovering.ReplaceValue(false);
1218 1220
1219 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1221 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1220 .WillRepeatedly(Return(&adapter_properties)); 1222 .WillRepeatedly(Return(&adapter_properties));
1221 1223
1222 adapter_callback.Run(adapter_path, true); 1224 adapter_callback.Run(adapter_path, true);
1223 1225
1224 // Adapter should have the correct property value. 1226 // Adapter should have the correct property value.
1225 EXPECT_FALSE(adapter->IsDiscovering()); 1227 EXPECT_FALSE(adapter->IsDiscovering());
1226 1228
1227 // Report that the property has been changed; 1229 // Report that the property has been changed;
1228 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called. 1230 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called.
1229 MockBluetoothAdapter::Observer adapter_observer; 1231 MockBluetoothAdapter::Observer adapter_observer;
1230 adapter->AddObserver(&adapter_observer); 1232 adapter->AddObserver(&adapter_observer);
1231 1233
1232 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), true)) 1234 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), true))
1233 .Times(1); 1235 .Times(1);
1234 1236
1235 adapter_properties.discovering.ReplaceValue(true); 1237 adapter_properties.discovering.ReplaceValue(true);
1236 1238
1237 BluetoothAdapterChromeOs* adapter_chromeos = 1239 BluetoothAdapterChromeOs* adapter_chromeos =
1238 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1240 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1239 1241
1240 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 1242 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
1241 ->AdapterPropertyChanged(adapter_path, 1243 ->AdapterPropertyChanged(adapter_path,
1242 adapter_properties.discovering.name()); 1244 adapter_properties.discovering.name());
1243 1245
1244 // Adapter should have the new property values. 1246 // Adapter should have the new property values.
1245 EXPECT_TRUE(adapter->IsDiscovering()); 1247 EXPECT_TRUE(adapter->IsDiscovering());
1246 } 1248 }
1247 1249
1248 TEST_F(BluetoothAdapterChromeOsTest, 1250 TEST_F(BluetoothAdapterChromeOsTest,
1249 DefaultAdapterDiscoveringPropertyUnchanged) { 1251 DefaultAdapterDiscoveringPropertyUnchanged) {
1250 const dbus::ObjectPath adapter_path("/fake/hci0"); 1252 const dbus::ObjectPath adapter_path("/fake/hci0");
1251 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1253 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1252 1254
1253 // Create the default adapter instance; 1255 // Create the default adapter instance;
1254 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1256 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1255 // a callback to obtain the adapter path. 1257 // a callback to obtain the adapter path.
1256 BluetoothManagerClient::AdapterCallback adapter_callback; 1258 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1257 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1259 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1258 .WillOnce(SaveArg<0>(&adapter_callback)); 1260 .WillOnce(SaveArg<0>(&adapter_callback));
1259 1261
1260 scoped_refptr<BluetoothAdapter> adapter = 1262 scoped_refptr<BluetoothAdapter> adapter =
1261 BluetoothAdapterFactory::DefaultAdapter(); 1263 BluetoothAdapterFactory::DefaultAdapter();
1262 1264
1263 // Call the adapter callback; 1265 // Call the adapter callback;
1264 // BluetoothAdapterClient::GetProperties will be called once to obtain 1266 // BluetoothAdapterClient::GetProperties will be called once to obtain
1265 // the property set. 1267 // the property set.
1266 MockBluetoothAdapterClient::Properties adapter_properties; 1268 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1267 adapter_properties.address.ReplaceValue(adapter_address); 1269 adapter_properties.address.ReplaceValue(adapter_address);
1268 adapter_properties.discovering.ReplaceValue(true); 1270 adapter_properties.discovering.ReplaceValue(true);
1269 1271
1270 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1272 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1271 .WillRepeatedly(Return(&adapter_properties)); 1273 .WillRepeatedly(Return(&adapter_properties));
1272 1274
1273 adapter_callback.Run(adapter_path, true); 1275 adapter_callback.Run(adapter_path, true);
1274 1276
1275 // Adapter should have the correct property value. 1277 // Adapter should have the correct property value.
1276 EXPECT_TRUE(adapter->IsDiscovering()); 1278 EXPECT_TRUE(adapter->IsDiscovering());
1277 1279
1278 // Report that the property has been changed, but don't change the value; 1280 // Report that the property has been changed, but don't change the value;
1279 // BluetoothAdapter::Observer::AdapterDiscoveringChanged should not be 1281 // BluetoothAdapter::Observer::AdapterDiscoveringChanged should not be
1280 // called. 1282 // called.
1281 MockBluetoothAdapter::Observer adapter_observer; 1283 MockBluetoothAdapter::Observer adapter_observer;
1282 adapter->AddObserver(&adapter_observer); 1284 adapter->AddObserver(&adapter_observer);
1283 1285
1284 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _)) 1286 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _))
1285 .Times(0); 1287 .Times(0);
1286 1288
1287 BluetoothAdapterChromeOs* adapter_chromeos = 1289 BluetoothAdapterChromeOs* adapter_chromeos =
1288 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1290 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1289 1291
1290 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 1292 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
1291 ->AdapterPropertyChanged(adapter_path, 1293 ->AdapterPropertyChanged(adapter_path,
1292 adapter_properties.discovering.name()); 1294 adapter_properties.discovering.name());
1293 1295
1294 // Adapter should still have the same property values. 1296 // Adapter should still have the same property values.
1295 EXPECT_TRUE(adapter->IsDiscovering()); 1297 EXPECT_TRUE(adapter->IsDiscovering());
1296 } 1298 }
1297 1299
1298 TEST_F(BluetoothAdapterChromeOsTest, 1300 TEST_F(BluetoothAdapterChromeOsTest,
1299 DefaultAdapterDiscoveringPropertyChangedWithoutAddress) { 1301 DefaultAdapterDiscoveringPropertyChangedWithoutAddress) {
1300 const dbus::ObjectPath adapter_path("/fake/hci0"); 1302 const dbus::ObjectPath adapter_path("/fake/hci0");
1301 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1303 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1302 1304
1303 // Create the default adapter instance; 1305 // Create the default adapter instance;
1304 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1306 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1305 // a callback to obtain the adapter path. 1307 // a callback to obtain the adapter path.
1306 BluetoothManagerClient::AdapterCallback adapter_callback; 1308 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1307 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1309 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1308 .WillOnce(SaveArg<0>(&adapter_callback)); 1310 .WillOnce(SaveArg<0>(&adapter_callback));
1309 1311
1310 scoped_refptr<BluetoothAdapter> adapter = 1312 scoped_refptr<BluetoothAdapter> adapter =
1311 BluetoothAdapterFactory::DefaultAdapter(); 1313 BluetoothAdapterFactory::DefaultAdapter();
1312 1314
1313 // Call the adapter callback; 1315 // Call the adapter callback;
1314 // BluetoothAdapterClient::GetProperties will be called once to obtain 1316 // BluetoothAdapterClient::GetProperties will be called once to obtain
1315 // the property set but BluetoothAdapter::Observer::AdapterDiscoveringChanged 1317 // the property set but BluetoothAdapter::Observer::AdapterDiscoveringChanged
1316 // should not yet be called. 1318 // should not yet be called.
1317 MockBluetoothAdapterClient::Properties adapter_properties; 1319 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1318 1320
1319 MockBluetoothAdapter::Observer adapter_observer; 1321 MockBluetoothAdapter::Observer adapter_observer;
1320 adapter->AddObserver(&adapter_observer); 1322 adapter->AddObserver(&adapter_observer);
1321 1323
1322 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1324 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1323 .WillRepeatedly(Return(&adapter_properties)); 1325 .WillRepeatedly(Return(&adapter_properties));
1324 1326
1325 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _)) 1327 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _))
1326 .Times(0); 1328 .Times(0);
1327 1329
1328 adapter_callback.Run(adapter_path, true); 1330 adapter_callback.Run(adapter_path, true);
1329 1331
1330 // Tell the adapter that its discovering property changed, the observer 1332 // Tell the adapter that its discovering property changed, the observer
1331 // method should still not be called because there is no address for 1333 // method should still not be called because there is no address for
1332 // the adapter so it is not present. 1334 // the adapter so it is not present.
1333 adapter_properties.discovering.ReplaceValue(true); 1335 adapter_properties.discovering.ReplaceValue(true);
1334 1336
1335 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _)) 1337 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), _))
1336 .Times(0); 1338 .Times(0);
1337 1339
1338 BluetoothAdapterChromeOs* adapter_chromeos = 1340 BluetoothAdapterChromeOs* adapter_chromeos =
1339 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1341 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1340 1342
1341 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 1343 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
1342 ->AdapterPropertyChanged(adapter_path, 1344 ->AdapterPropertyChanged(adapter_path,
1343 adapter_properties.discovering.name()); 1345 adapter_properties.discovering.name());
1344 1346
1345 // Adapter should not yet have the property value. 1347 // Adapter should not yet have the property value.
1346 EXPECT_FALSE(adapter->IsDiscovering()); 1348 EXPECT_FALSE(adapter->IsDiscovering());
1347 1349
1348 // Tell the adapter the address now, 1350 // Tell the adapter the address now,
1349 // BluetoothAdapter::Observer::AdapterPresentChanged and 1351 // BluetoothAdapter::Observer::AdapterPresentChanged and
1350 // BluetoothAdapter::Observer::AdapterDiscoveringChanged now must be called. 1352 // BluetoothAdapter::Observer::AdapterDiscoveringChanged now must be called.
1351 adapter_properties.address.ReplaceValue(adapter_address); 1353 adapter_properties.address.ReplaceValue(adapter_address);
1352 1354
1353 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 1355 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
1354 .Times(1); 1356 .Times(1);
1355 1357
1356 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), true)) 1358 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), true))
1357 .Times(1); 1359 .Times(1);
1358 1360
1359 static_cast<BluetoothAdapterClient::Observer*>(adapter_chromeos) 1361 static_cast<chromeos::BluetoothAdapterClient::Observer*>(adapter_chromeos)
1360 ->AdapterPropertyChanged(adapter_path, 1362 ->AdapterPropertyChanged(adapter_path,
1361 adapter_properties.address.name()); 1363 adapter_properties.address.name());
1362 1364
1363 // Adapter should now have the correct property value. 1365 // Adapter should now have the correct property value.
1364 EXPECT_TRUE(adapter->IsDiscovering()); 1366 EXPECT_TRUE(adapter->IsDiscovering());
1365 } 1367 }
1366 1368
1367 TEST_F(BluetoothAdapterChromeOsTest, 1369 TEST_F(BluetoothAdapterChromeOsTest,
1368 DefaultAdapterDiscoveringPropertyResetOnReplace) { 1370 DefaultAdapterDiscoveringPropertyResetOnReplace) {
1369 const dbus::ObjectPath initial_adapter_path("/fake/hci0"); 1371 const dbus::ObjectPath initial_adapter_path("/fake/hci0");
1370 const dbus::ObjectPath new_adapter_path("/fake/hci1"); 1372 const dbus::ObjectPath new_adapter_path("/fake/hci1");
1371 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE"; 1373 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE";
1372 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE"; 1374 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE";
1373 1375
1374 // Create the default adapter instance; 1376 // Create the default adapter instance;
1375 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1377 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1376 // a callback to obtain the adapter path. 1378 // a callback to obtain the adapter path.
1377 BluetoothManagerClient::AdapterCallback adapter_callback; 1379 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1378 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1380 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1379 .WillOnce(SaveArg<0>(&adapter_callback)); 1381 .WillOnce(SaveArg<0>(&adapter_callback));
1380 1382
1381 scoped_refptr<BluetoothAdapter> adapter = 1383 scoped_refptr<BluetoothAdapter> adapter =
1382 BluetoothAdapterFactory::DefaultAdapter(); 1384 BluetoothAdapterFactory::DefaultAdapter();
1383 1385
1384 // Call the adapter callback; 1386 // Call the adapter callback;
1385 // BluetoothAdapterClient::GetProperties will be called once to obtain 1387 // BluetoothAdapterClient::GetProperties will be called once to obtain
1386 // the property set. 1388 // the property set.
1387 MockBluetoothAdapterClient::Properties initial_adapter_properties; 1389 chromeos::MockBluetoothAdapterClient::Properties initial_adapter_properties;
1388 initial_adapter_properties.address.ReplaceValue(initial_adapter_address); 1390 initial_adapter_properties.address.ReplaceValue(initial_adapter_address);
1389 initial_adapter_properties.discovering.ReplaceValue(true); 1391 initial_adapter_properties.discovering.ReplaceValue(true);
1390 1392
1391 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path)) 1393 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path))
1392 .WillRepeatedly(Return(&initial_adapter_properties)); 1394 .WillRepeatedly(Return(&initial_adapter_properties));
1393 1395
1394 adapter_callback.Run(initial_adapter_path, true); 1396 adapter_callback.Run(initial_adapter_path, true);
1395 1397
1396 // Tell the adapter the default adapter changed; 1398 // Tell the adapter the default adapter changed;
1397 // BluetoothAdapterClient::GetProperties will be called once to obtain 1399 // BluetoothAdapterClient::GetProperties will be called once to obtain
1398 // the property set. 1400 // the property set.
1399 MockBluetoothAdapterClient::Properties new_adapter_properties; 1401 chromeos::MockBluetoothAdapterClient::Properties new_adapter_properties;
1400 new_adapter_properties.address.ReplaceValue(new_adapter_address); 1402 new_adapter_properties.address.ReplaceValue(new_adapter_address);
1401 1403
1402 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path)) 1404 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path))
1403 .WillRepeatedly(Return(&new_adapter_properties)); 1405 .WillRepeatedly(Return(&new_adapter_properties));
1404 1406
1405 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called. 1407 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called.
1406 MockBluetoothAdapter::Observer adapter_observer; 1408 MockBluetoothAdapter::Observer adapter_observer;
1407 adapter->AddObserver(&adapter_observer); 1409 adapter->AddObserver(&adapter_observer);
1408 1410
1409 { 1411 {
1410 InSequence s; 1412 InSequence s;
1411 1413
1412 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 1414 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
1413 .Times(1); 1415 .Times(1);
1414 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true)) 1416 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), true))
1415 .Times(1); 1417 .Times(1);
1416 } 1418 }
1417 1419
1418 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), false)) 1420 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), false))
1419 .Times(1); 1421 .Times(1);
1420 1422
1421 BluetoothAdapterChromeOs* adapter_chromeos = 1423 BluetoothAdapterChromeOs* adapter_chromeos =
1422 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1424 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1423 1425
1424 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 1426 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
1425 ->DefaultAdapterChanged(new_adapter_path); 1427 ->DefaultAdapterChanged(new_adapter_path);
1426 1428
1427 // Adapter should have the new property value. 1429 // Adapter should have the new property value.
1428 EXPECT_FALSE(adapter->IsDiscovering()); 1430 EXPECT_FALSE(adapter->IsDiscovering());
1429 } 1431 }
1430 1432
1431 TEST_F(BluetoothAdapterChromeOsTest, 1433 TEST_F(BluetoothAdapterChromeOsTest,
1432 DefaultAdapterDiscoveringPropertyResetOnReplaceWhenTrue) { 1434 DefaultAdapterDiscoveringPropertyResetOnReplaceWhenTrue) {
1433 const dbus::ObjectPath initial_adapter_path("/fake/hci0"); 1435 const dbus::ObjectPath initial_adapter_path("/fake/hci0");
1434 const dbus::ObjectPath new_adapter_path("/fake/hci1"); 1436 const dbus::ObjectPath new_adapter_path("/fake/hci1");
1435 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE"; 1437 const std::string initial_adapter_address = "CA:FE:4A:C0:FE:FE";
1436 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE"; 1438 const std::string new_adapter_address = "BA:C0:11:CO:FE:FE";
1437 1439
1438 // Create the default adapter instance; 1440 // Create the default adapter instance;
1439 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1441 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1440 // a callback to obtain the adapter path. 1442 // a callback to obtain the adapter path.
1441 BluetoothManagerClient::AdapterCallback adapter_callback; 1443 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1442 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1444 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1443 .WillOnce(SaveArg<0>(&adapter_callback)); 1445 .WillOnce(SaveArg<0>(&adapter_callback));
1444 1446
1445 scoped_refptr<BluetoothAdapter> adapter = 1447 scoped_refptr<BluetoothAdapter> adapter =
1446 BluetoothAdapterFactory::DefaultAdapter(); 1448 BluetoothAdapterFactory::DefaultAdapter();
1447 1449
1448 // Call the adapter callback; 1450 // Call the adapter callback;
1449 // BluetoothAdapterClient::GetProperties will be called once to obtain 1451 // BluetoothAdapterClient::GetProperties will be called once to obtain
1450 // the property set. 1452 // the property set.
1451 MockBluetoothAdapterClient::Properties initial_adapter_properties; 1453 chromeos::MockBluetoothAdapterClient::Properties initial_adapter_properties;
1452 initial_adapter_properties.address.ReplaceValue(initial_adapter_address); 1454 initial_adapter_properties.address.ReplaceValue(initial_adapter_address);
1453 initial_adapter_properties.discovering.ReplaceValue(true); 1455 initial_adapter_properties.discovering.ReplaceValue(true);
1454 1456
1455 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path)) 1457 EXPECT_CALL(*mock_adapter_client_, GetProperties(initial_adapter_path))
1456 .WillRepeatedly(Return(&initial_adapter_properties)); 1458 .WillRepeatedly(Return(&initial_adapter_properties));
1457 1459
1458 adapter_callback.Run(initial_adapter_path, true); 1460 adapter_callback.Run(initial_adapter_path, true);
1459 1461
1460 // Tell the adapter the default adapter changed; 1462 // Tell the adapter the default adapter changed;
1461 // BluetoothAdapterClient::GetProperties will be called once to obtain 1463 // BluetoothAdapterClient::GetProperties will be called once to obtain
1462 // the property set. 1464 // the property set.
1463 MockBluetoothAdapterClient::Properties new_adapter_properties; 1465 chromeos::MockBluetoothAdapterClient::Properties new_adapter_properties;
1464 new_adapter_properties.address.ReplaceValue(new_adapter_address); 1466 new_adapter_properties.address.ReplaceValue(new_adapter_address);
1465 new_adapter_properties.discovering.ReplaceValue(true); 1467 new_adapter_properties.discovering.ReplaceValue(true);
1466 1468
1467 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path)) 1469 EXPECT_CALL(*mock_adapter_client_, GetProperties(new_adapter_path))
1468 .WillRepeatedly(Return(&new_adapter_properties)); 1470 .WillRepeatedly(Return(&new_adapter_properties));
1469 1471
1470 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called once 1472 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called once
1471 // to set the value to false for the previous adapter and once to set the 1473 // to set the value to false for the previous adapter and once to set the
1472 // value to true for the new adapter. 1474 // value to true for the new adapter.
1473 MockBluetoothAdapter::Observer adapter_observer; 1475 MockBluetoothAdapter::Observer adapter_observer;
(...skipping 15 matching lines...) Expand all
1489 false)) 1491 false))
1490 .Times(1); 1492 .Times(1);
1491 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), 1493 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(),
1492 true)) 1494 true))
1493 .Times(1); 1495 .Times(1);
1494 } 1496 }
1495 1497
1496 BluetoothAdapterChromeOs* adapter_chromeos = 1498 BluetoothAdapterChromeOs* adapter_chromeos =
1497 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1499 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1498 1500
1499 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 1501 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
1500 ->DefaultAdapterChanged(new_adapter_path); 1502 ->DefaultAdapterChanged(new_adapter_path);
1501 1503
1502 // Adapter should have the new property value. 1504 // Adapter should have the new property value.
1503 EXPECT_TRUE(adapter->IsDiscovering()); 1505 EXPECT_TRUE(adapter->IsDiscovering());
1504 } 1506 }
1505 1507
1506 TEST_F(BluetoothAdapterChromeOsTest, 1508 TEST_F(BluetoothAdapterChromeOsTest,
1507 DefaultAdapterDiscoveringPropertyResetOnRemove) { 1509 DefaultAdapterDiscoveringPropertyResetOnRemove) {
1508 const dbus::ObjectPath adapter_path("/fake/hci0"); 1510 const dbus::ObjectPath adapter_path("/fake/hci0");
1509 const std::string adapter_address = "CA:FE:4A:C0:FE:FE"; 1511 const std::string adapter_address = "CA:FE:4A:C0:FE:FE";
1510 1512
1511 // Create the default adapter instance; 1513 // Create the default adapter instance;
1512 // BluetoothManagerClient::DefaultAdapter will be called once, passing 1514 // BluetoothManagerClient::DefaultAdapter will be called once, passing
1513 // a callback to obtain the adapter path. 1515 // a callback to obtain the adapter path.
1514 BluetoothManagerClient::AdapterCallback adapter_callback; 1516 chromeos::BluetoothManagerClient::AdapterCallback adapter_callback;
1515 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_)) 1517 EXPECT_CALL(*mock_manager_client_, DefaultAdapter(_))
1516 .WillOnce(SaveArg<0>(&adapter_callback)); 1518 .WillOnce(SaveArg<0>(&adapter_callback));
1517 1519
1518 scoped_refptr<BluetoothAdapter> adapter = 1520 scoped_refptr<BluetoothAdapter> adapter =
1519 BluetoothAdapterFactory::DefaultAdapter(); 1521 BluetoothAdapterFactory::DefaultAdapter();
1520 1522
1521 // Call the adapter callback; 1523 // Call the adapter callback;
1522 // BluetoothAdapterClient::GetProperties will be called once to obtain 1524 // BluetoothAdapterClient::GetProperties will be called once to obtain
1523 // the property set. 1525 // the property set.
1524 MockBluetoothAdapterClient::Properties adapter_properties; 1526 chromeos::MockBluetoothAdapterClient::Properties adapter_properties;
1525 adapter_properties.address.ReplaceValue(adapter_address); 1527 adapter_properties.address.ReplaceValue(adapter_address);
1526 adapter_properties.discovering.ReplaceValue(true); 1528 adapter_properties.discovering.ReplaceValue(true);
1527 1529
1528 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path)) 1530 EXPECT_CALL(*mock_adapter_client_, GetProperties(adapter_path))
1529 .WillRepeatedly(Return(&adapter_properties)); 1531 .WillRepeatedly(Return(&adapter_properties));
1530 1532
1531 adapter_callback.Run(adapter_path, true); 1533 adapter_callback.Run(adapter_path, true);
1532 1534
1533 // Report that the adapter has been removed; 1535 // Report that the adapter has been removed;
1534 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called. 1536 // BluetoothAdapter::Observer::AdapterDiscoveringChanged will be called.
1535 MockBluetoothAdapter::Observer adapter_observer; 1537 MockBluetoothAdapter::Observer adapter_observer;
1536 adapter->AddObserver(&adapter_observer); 1538 adapter->AddObserver(&adapter_observer);
1537 1539
1538 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false)) 1540 EXPECT_CALL(adapter_observer, AdapterPresentChanged(adapter.get(), false))
1539 .Times(1); 1541 .Times(1);
1540 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), false)) 1542 EXPECT_CALL(adapter_observer, AdapterDiscoveringChanged(adapter.get(), false))
1541 .Times(1); 1543 .Times(1);
1542 1544
1543 BluetoothAdapterChromeOs* adapter_chromeos = 1545 BluetoothAdapterChromeOs* adapter_chromeos =
1544 static_cast<BluetoothAdapterChromeOs*>(adapter.get()); 1546 static_cast<BluetoothAdapterChromeOs*>(adapter.get());
1545 1547
1546 static_cast<BluetoothManagerClient::Observer*>(adapter_chromeos) 1548 static_cast<chromeos::BluetoothManagerClient::Observer*>(adapter_chromeos)
1547 ->AdapterRemoved(adapter_path); 1549 ->AdapterRemoved(adapter_path);
1548 1550
1549 // Adapter should have the new property value. 1551 // Adapter should have the new property value.
1550 EXPECT_FALSE(adapter->IsDiscovering()); 1552 EXPECT_FALSE(adapter->IsDiscovering());
1551 } 1553 }
1552 1554
1553 } // namespace chromeos 1555 } // namespace device_bluetooth
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698