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

Side by Side Diff: device/bluetooth/bluez/bluetooth_gatt_bluez_unittest.cc

Issue 2614753004: Remove ScopedVector from bluetooth. (Closed)
Patch Set: last win bits Created 3 years, 11 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 <stddef.h> 5 #include <stddef.h>
6 #include <stdint.h> 6 #include <stdint.h>
7 7
8 #include <memory> 8 #include <memory>
9 #include <utility> 9 #include <utility>
10 #include <vector>
10 11
11 #include "base/memory/scoped_vector.h"
12 #include "base/message_loop/message_loop.h" 12 #include "base/message_loop/message_loop.h"
13 #include "base/run_loop.h" 13 #include "base/run_loop.h"
14 #include "dbus/object_path.h" 14 #include "dbus/object_path.h"
15 #include "device/bluetooth/bluetooth_adapter.h" 15 #include "device/bluetooth/bluetooth_adapter.h"
16 #include "device/bluetooth/bluetooth_adapter_factory.h" 16 #include "device/bluetooth/bluetooth_adapter_factory.h"
17 #include "device/bluetooth/bluetooth_device.h" 17 #include "device/bluetooth/bluetooth_device.h"
18 #include "device/bluetooth/bluetooth_discovery_filter.h" 18 #include "device/bluetooth/bluetooth_discovery_filter.h"
19 #include "device/bluetooth/bluetooth_gatt_connection.h" 19 #include "device/bluetooth/bluetooth_gatt_connection.h"
20 #include "device/bluetooth/bluetooth_gatt_notify_session.h" 20 #include "device/bluetooth/bluetooth_gatt_notify_session.h"
21 #include "device/bluetooth/bluetooth_remote_gatt_characteristic.h" 21 #include "device/bluetooth/bluetooth_remote_gatt_characteristic.h"
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
252 } 252 }
253 253
254 void GattConnectionCallback(std::unique_ptr<BluetoothGattConnection> conn) { 254 void GattConnectionCallback(std::unique_ptr<BluetoothGattConnection> conn) {
255 ++success_callback_count_; 255 ++success_callback_count_;
256 gatt_conn_ = std::move(conn); 256 gatt_conn_ = std::move(conn);
257 } 257 }
258 258
259 void NotifySessionCallback( 259 void NotifySessionCallback(
260 std::unique_ptr<BluetoothGattNotifySession> session) { 260 std::unique_ptr<BluetoothGattNotifySession> session) {
261 ++success_callback_count_; 261 ++success_callback_count_;
262 update_sessions_.push_back(session.release()); 262 update_sessions_.push_back(std::move(session));
263 QuitMessageLoop(); 263 QuitMessageLoop();
264 } 264 }
265 265
266 void ServiceErrorCallback(BluetoothRemoteGattService::GattErrorCode err) { 266 void ServiceErrorCallback(BluetoothRemoteGattService::GattErrorCode err) {
267 ++error_callback_count_; 267 ++error_callback_count_;
268 last_service_error_ = err; 268 last_service_error_ = err;
269 } 269 }
270 270
271 void ErrorCallback() { ++error_callback_count_; } 271 void ErrorCallback() { ++error_callback_count_; }
272 272
(...skipping 15 matching lines...) Expand all
288 288
289 base::MessageLoop message_loop_; 289 base::MessageLoop message_loop_;
290 290
291 bluez::FakeBluetoothDeviceClient* fake_bluetooth_device_client_; 291 bluez::FakeBluetoothDeviceClient* fake_bluetooth_device_client_;
292 bluez::FakeBluetoothGattServiceClient* fake_bluetooth_gatt_service_client_; 292 bluez::FakeBluetoothGattServiceClient* fake_bluetooth_gatt_service_client_;
293 bluez::FakeBluetoothGattCharacteristicClient* 293 bluez::FakeBluetoothGattCharacteristicClient*
294 fake_bluetooth_gatt_characteristic_client_; 294 fake_bluetooth_gatt_characteristic_client_;
295 bluez::FakeBluetoothGattDescriptorClient* 295 bluez::FakeBluetoothGattDescriptorClient*
296 fake_bluetooth_gatt_descriptor_client_; 296 fake_bluetooth_gatt_descriptor_client_;
297 std::unique_ptr<device::BluetoothGattConnection> gatt_conn_; 297 std::unique_ptr<device::BluetoothGattConnection> gatt_conn_;
298 ScopedVector<BluetoothGattNotifySession> update_sessions_; 298 std::vector<std::unique_ptr<BluetoothGattNotifySession>> update_sessions_;
299 scoped_refptr<BluetoothAdapter> adapter_; 299 scoped_refptr<BluetoothAdapter> adapter_;
300 300
301 int success_callback_count_; 301 int success_callback_count_;
302 int error_callback_count_; 302 int error_callback_count_;
303 std::vector<uint8_t> last_read_value_; 303 std::vector<uint8_t> last_read_value_;
304 BluetoothRemoteGattService::GattErrorCode last_service_error_; 304 BluetoothRemoteGattService::GattErrorCode last_service_error_;
305 }; 305 };
306 306
307 TEST_F(BluetoothGattBlueZTest, 307 TEST_F(BluetoothGattBlueZTest,
308 RetrieveGattConnectedDevicesWithDiscoveryFilter_NoFilter) { 308 RetrieveGattConnectedDevicesWithDiscoveryFilter_NoFilter) {
(...skipping 1118 matching lines...) Expand 10 before | Expand all | Expand 10 after
1427 EXPECT_EQ(0, error_callback_count_); 1427 EXPECT_EQ(0, error_callback_count_);
1428 EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count()); 1428 EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count());
1429 EXPECT_EQ(3U, update_sessions_.size()); 1429 EXPECT_EQ(3U, update_sessions_.size());
1430 1430
1431 // Notifications should be getting sent regularly now. 1431 // Notifications should be getting sent regularly now.
1432 base::RunLoop().Run(); 1432 base::RunLoop().Run();
1433 EXPECT_GT(observer.gatt_characteristic_value_changed_count(), 1); 1433 EXPECT_GT(observer.gatt_characteristic_value_changed_count(), 1);
1434 1434
1435 // Stop one of the sessions. The session should become inactive but the 1435 // Stop one of the sessions. The session should become inactive but the
1436 // characteristic should still be notifying. 1436 // characteristic should still be notifying.
1437 BluetoothGattNotifySession* session = update_sessions_[0]; 1437 BluetoothGattNotifySession* session = update_sessions_[0].get();
1438 EXPECT_TRUE(session->IsActive()); 1438 EXPECT_TRUE(session->IsActive());
1439 session->Stop(base::Bind(&BluetoothGattBlueZTest::SuccessCallback, 1439 session->Stop(base::Bind(&BluetoothGattBlueZTest::SuccessCallback,
1440 base::Unretained(this))); 1440 base::Unretained(this)));
1441 1441
1442 // Run message loop to stop the notify session. 1442 // Run message loop to stop the notify session.
1443 base::RunLoop().Run(); 1443 base::RunLoop().Run();
1444 1444
1445 EXPECT_EQ(4, success_callback_count_); 1445 EXPECT_EQ(4, success_callback_count_);
1446 EXPECT_EQ(0, error_callback_count_); 1446 EXPECT_EQ(0, error_callback_count_);
1447 EXPECT_FALSE(session->IsActive()); 1447 EXPECT_FALSE(session->IsActive());
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
1637 1637
1638 EXPECT_EQ(1, success_callback_count_); 1638 EXPECT_EQ(1, success_callback_count_);
1639 EXPECT_EQ(0, error_callback_count_); 1639 EXPECT_EQ(0, error_callback_count_);
1640 EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count()); 1640 EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count());
1641 EXPECT_TRUE(characteristic->IsNotifying()); 1641 EXPECT_TRUE(characteristic->IsNotifying());
1642 EXPECT_EQ(1U, update_sessions_.size()); 1642 EXPECT_EQ(1U, update_sessions_.size());
1643 EXPECT_TRUE(update_sessions_[0]->IsActive()); 1643 EXPECT_TRUE(update_sessions_[0]->IsActive());
1644 } 1644 }
1645 1645
1646 } // namespace bluez 1646 } // namespace bluez
OLDNEW
« no previous file with comments | « device/bluetooth/bluez/bluetooth_bluez_unittest.cc ('k') | device/bluetooth/test/bluetooth_test.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698