| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/memory/scoped_vector.h" | 9 #include "base/memory/scoped_vector.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 370 | 370 |
| 371 EXPECT_EQ(0, observer.gatt_services_discovered_count()); | 371 EXPECT_EQ(0, observer.gatt_services_discovered_count()); |
| 372 | 372 |
| 373 // Expose the fake Heart Rate Service. | 373 // Expose the fake Heart Rate Service. |
| 374 fake_bluetooth_gatt_service_client_->ExposeHeartRateService( | 374 fake_bluetooth_gatt_service_client_->ExposeHeartRateService( |
| 375 dbus::ObjectPath(bluez::FakeBluetoothDeviceClient::kLowEnergyPath)); | 375 dbus::ObjectPath(bluez::FakeBluetoothDeviceClient::kLowEnergyPath)); |
| 376 // Notify that all services have been discovered. | 376 // Notify that all services have been discovered. |
| 377 properties->gatt_services.ReplaceValue( | 377 properties->gatt_services.ReplaceValue( |
| 378 fake_bluetooth_gatt_service_client_->GetServices()); | 378 fake_bluetooth_gatt_service_client_->GetServices()); |
| 379 | 379 |
| 380 EXPECT_TRUE(device->IsGattServicesDiscoveryComplete()); |
| 381 EXPECT_EQ(1u, device->GetGattServices().size()); |
| 380 EXPECT_EQ(1, observer.gatt_services_discovered_count()); | 382 EXPECT_EQ(1, observer.gatt_services_discovered_count()); |
| 381 EXPECT_EQ(device, observer.last_device()); | 383 EXPECT_EQ(device, observer.last_device()); |
| 382 EXPECT_EQ(bluez::FakeBluetoothDeviceClient::kLowEnergyAddress, | 384 EXPECT_EQ(bluez::FakeBluetoothDeviceClient::kLowEnergyAddress, |
| 383 observer.last_device_address()); | 385 observer.last_device_address()); |
| 386 |
| 387 // Disconnect from the device: |
| 388 device->Disconnect(base::Bind(&BluetoothGattBlueZTest::SuccessCallback, |
| 389 base::Unretained(this)), |
| 390 base::Bind(&BluetoothGattBlueZTest::ErrorCallback, |
| 391 base::Unretained(this))); |
| 392 fake_bluetooth_gatt_service_client_->HideHeartRateService(); |
| 393 properties->connected.ReplaceValue(false); |
| 394 |
| 395 EXPECT_FALSE(device->IsConnected()); |
| 396 EXPECT_FALSE(device->IsGattServicesDiscoveryComplete()); |
| 397 EXPECT_EQ(0u, device->GetGattServices().size()); |
| 398 |
| 399 // Verify that the device can be connected to again: |
| 400 device->CreateGattConnection( |
| 401 base::Bind(&BluetoothGattBlueZTest::GattConnectionCallback, |
| 402 base::Unretained(this)), |
| 403 base::Bind(&BluetoothGattBlueZTest::ConnectErrorCallback, |
| 404 base::Unretained(this))); |
| 405 properties->connected.ReplaceValue(true); |
| 406 EXPECT_TRUE(device->IsConnected()); |
| 407 |
| 408 // Verify that service discovery can be done again: |
| 409 fake_bluetooth_gatt_service_client_->ExposeHeartRateService( |
| 410 dbus::ObjectPath(bluez::FakeBluetoothDeviceClient::kLowEnergyPath)); |
| 411 properties->gatt_services.ReplaceValue( |
| 412 fake_bluetooth_gatt_service_client_->GetServices()); |
| 413 EXPECT_TRUE(device->IsGattServicesDiscoveryComplete()); |
| 414 EXPECT_EQ(1u, device->GetGattServices().size()); |
| 384 } | 415 } |
| 385 | 416 |
| 386 TEST_F(BluetoothGattBlueZTest, GattCharacteristicAddedAndRemoved) { | 417 TEST_F(BluetoothGattBlueZTest, GattCharacteristicAddedAndRemoved) { |
| 387 fake_bluetooth_device_client_->CreateDevice( | 418 fake_bluetooth_device_client_->CreateDevice( |
| 388 dbus::ObjectPath(bluez::FakeBluetoothAdapterClient::kAdapterPath), | 419 dbus::ObjectPath(bluez::FakeBluetoothAdapterClient::kAdapterPath), |
| 389 dbus::ObjectPath(bluez::FakeBluetoothDeviceClient::kLowEnergyPath)); | 420 dbus::ObjectPath(bluez::FakeBluetoothDeviceClient::kLowEnergyPath)); |
| 390 BluetoothDevice* device = | 421 BluetoothDevice* device = |
| 391 adapter_->GetDevice(bluez::FakeBluetoothDeviceClient::kLowEnergyAddress); | 422 adapter_->GetDevice(bluez::FakeBluetoothDeviceClient::kLowEnergyAddress); |
| 392 ASSERT_TRUE(device); | 423 ASSERT_TRUE(device); |
| 393 | 424 |
| (...skipping 858 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1252 | 1283 |
| 1253 EXPECT_EQ(1, success_callback_count_); | 1284 EXPECT_EQ(1, success_callback_count_); |
| 1254 EXPECT_EQ(0, error_callback_count_); | 1285 EXPECT_EQ(0, error_callback_count_); |
| 1255 EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count()); | 1286 EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count()); |
| 1256 EXPECT_TRUE(characteristic->IsNotifying()); | 1287 EXPECT_TRUE(characteristic->IsNotifying()); |
| 1257 EXPECT_EQ(1U, update_sessions_.size()); | 1288 EXPECT_EQ(1U, update_sessions_.size()); |
| 1258 EXPECT_TRUE(update_sessions_[0]->IsActive()); | 1289 EXPECT_TRUE(update_sessions_[0]->IsActive()); |
| 1259 } | 1290 } |
| 1260 | 1291 |
| 1261 } // namespace bluez | 1292 } // namespace bluez |
| OLD | NEW |