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

Unified Diff: device/bluetooth/bluetooth_remote_gatt_descriptor_unittest.cc

Issue 1898643002: Refactor device::BluetoothGattXXX classes to split into remote/local. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: device/bluetooth/bluetooth_remote_gatt_descriptor_unittest.cc
diff --git a/device/bluetooth/bluetooth_gatt_descriptor_unittest.cc b/device/bluetooth/bluetooth_remote_gatt_descriptor_unittest.cc
similarity index 83%
rename from device/bluetooth/bluetooth_gatt_descriptor_unittest.cc
rename to device/bluetooth/bluetooth_remote_gatt_descriptor_unittest.cc
index 69bac49ec67fe7763549746a629f109205dd2cc6..e12884a1a8b9749e0371877390a4e4716c494503 100644
--- a/device/bluetooth/bluetooth_gatt_descriptor_unittest.cc
+++ b/device/bluetooth/bluetooth_remote_gatt_descriptor_unittest.cc
@@ -3,8 +3,8 @@
// found in the LICENSE file.
#include "base/run_loop.h"
-#include "device/bluetooth/bluetooth_gatt_characteristic.h"
-#include "device/bluetooth/bluetooth_gatt_service.h"
+#include "device/bluetooth/bluetooth_remote_gatt_characteristic.h"
+#include "device/bluetooth/bluetooth_remote_gatt_service.h"
#include "testing/gtest/include/gtest/gtest.h"
#if defined(OS_ANDROID)
@@ -16,7 +16,7 @@
namespace device {
#if defined(OS_ANDROID) || defined(OS_MACOSX)
-class BluetoothGattDescriptorTest : public BluetoothTest {
+class BluetoothRemoteGattDescriptorTest : public BluetoothTest {
public:
// Creates adapter_, device_, service_, characteristic_,
// descriptor1_, & descriptor2_.
@@ -47,15 +47,15 @@ class BluetoothGattDescriptorTest : public BluetoothTest {
}
BluetoothDevice* device_ = nullptr;
- BluetoothGattService* service_ = nullptr;
- BluetoothGattCharacteristic* characteristic_ = nullptr;
- BluetoothGattDescriptor* descriptor1_ = nullptr;
- BluetoothGattDescriptor* descriptor2_ = nullptr;
+ BluetoothRemoteGattService* service_ = nullptr;
+ BluetoothRemoteGattCharacteristic* characteristic_ = nullptr;
+ BluetoothRemoteGattDescriptor* descriptor1_ = nullptr;
+ BluetoothRemoteGattDescriptor* descriptor2_ = nullptr;
};
#endif
#if defined(OS_ANDROID)
-TEST_F(BluetoothGattDescriptorTest, GetIdentifier) {
+TEST_F(BluetoothRemoteGattDescriptorTest, GetIdentifier) {
InitWithFakeAdapter();
StartLowEnergyDiscoverySession();
// 2 devices to verify that descriptors on them have distinct IDs.
@@ -77,9 +77,9 @@ TEST_F(BluetoothGattDescriptorTest, GetIdentifier) {
SimulateGattServicesDiscovered(device1, services);
services.push_back(uuid);
SimulateGattServicesDiscovered(device2, services);
- BluetoothGattService* service1 = device1->GetGattServices()[0];
- BluetoothGattService* service2 = device2->GetGattServices()[0];
- BluetoothGattService* service3 = device2->GetGattServices()[1];
+ BluetoothRemoteGattService* service1 = device1->GetGattServices()[0];
+ BluetoothRemoteGattService* service2 = device2->GetGattServices()[0];
+ BluetoothRemoteGattService* service3 = device2->GetGattServices()[1];
// 6 characteristics (same UUID), 2 on each service.
SimulateGattCharacteristic(service1, uuid, /* properties */ 0);
SimulateGattCharacteristic(service1, uuid, /* properties */ 0);
@@ -87,12 +87,12 @@ TEST_F(BluetoothGattDescriptorTest, GetIdentifier) {
SimulateGattCharacteristic(service2, uuid, /* properties */ 0);
SimulateGattCharacteristic(service3, uuid, /* properties */ 0);
SimulateGattCharacteristic(service3, uuid, /* properties */ 0);
- BluetoothGattCharacteristic* char1 = service1->GetCharacteristics()[0];
- BluetoothGattCharacteristic* char2 = service1->GetCharacteristics()[1];
- BluetoothGattCharacteristic* char3 = service2->GetCharacteristics()[0];
- BluetoothGattCharacteristic* char4 = service2->GetCharacteristics()[1];
- BluetoothGattCharacteristic* char5 = service3->GetCharacteristics()[0];
- BluetoothGattCharacteristic* char6 = service3->GetCharacteristics()[1];
+ BluetoothRemoteGattCharacteristic* char1 = service1->GetCharacteristics()[0];
+ BluetoothRemoteGattCharacteristic* char2 = service1->GetCharacteristics()[1];
+ BluetoothRemoteGattCharacteristic* char3 = service2->GetCharacteristics()[0];
+ BluetoothRemoteGattCharacteristic* char4 = service2->GetCharacteristics()[1];
+ BluetoothRemoteGattCharacteristic* char5 = service3->GetCharacteristics()[0];
+ BluetoothRemoteGattCharacteristic* char6 = service3->GetCharacteristics()[1];
// 6 descriptors (same UUID), 1 on each characteristic
// TODO(576900) Test multiple descriptors with same UUID on one
// characteristic.
@@ -102,12 +102,12 @@ TEST_F(BluetoothGattDescriptorTest, GetIdentifier) {
SimulateGattDescriptor(char4, uuid);
SimulateGattDescriptor(char5, uuid);
SimulateGattDescriptor(char6, uuid);
- BluetoothGattDescriptor* desc1 = char1->GetDescriptors()[0];
- BluetoothGattDescriptor* desc2 = char2->GetDescriptors()[0];
- BluetoothGattDescriptor* desc3 = char3->GetDescriptors()[0];
- BluetoothGattDescriptor* desc4 = char4->GetDescriptors()[0];
- BluetoothGattDescriptor* desc5 = char5->GetDescriptors()[0];
- BluetoothGattDescriptor* desc6 = char6->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* desc1 = char1->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* desc2 = char2->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* desc3 = char3->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* desc4 = char4->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* desc5 = char5->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* desc6 = char6->GetDescriptors()[0];
// All IDs are unique.
EXPECT_NE(desc1->GetIdentifier(), desc2->GetIdentifier());
@@ -133,7 +133,7 @@ TEST_F(BluetoothGattDescriptorTest, GetIdentifier) {
#endif // defined(OS_ANDROID)
#if defined(OS_ANDROID)
-TEST_F(BluetoothGattDescriptorTest, GetUUID) {
+TEST_F(BluetoothRemoteGattDescriptorTest, GetUUID) {
InitWithFakeAdapter();
StartLowEnergyDiscoverySession();
BluetoothDevice* device = DiscoverLowEnergyDevice(3);
@@ -144,12 +144,12 @@ TEST_F(BluetoothGattDescriptorTest, GetUUID) {
services.push_back("00000000-0000-1000-8000-00805f9b34fb");
SimulateGattServicesDiscovered(device, services);
ASSERT_EQ(1u, device->GetGattServices().size());
- BluetoothGattService* service = device->GetGattServices()[0];
+ BluetoothRemoteGattService* service = device->GetGattServices()[0];
SimulateGattCharacteristic(service, "00000000-0000-1000-8000-00805f9b34fb",
/* properties */ 0);
ASSERT_EQ(1u, service->GetCharacteristics().size());
- BluetoothGattCharacteristic* characteristic =
+ BluetoothRemoteGattCharacteristic* characteristic =
service->GetCharacteristics()[0];
// Create 2 descriptors.
@@ -160,8 +160,10 @@ TEST_F(BluetoothGattDescriptorTest, GetUUID) {
SimulateGattDescriptor(characteristic, uuid_str1);
SimulateGattDescriptor(characteristic, uuid_str2);
ASSERT_EQ(2u, characteristic->GetDescriptors().size());
- BluetoothGattDescriptor* descriptor1 = characteristic->GetDescriptors()[0];
- BluetoothGattDescriptor* descriptor2 = characteristic->GetDescriptors()[1];
+ BluetoothRemoteGattDescriptor* descriptor1 =
+ characteristic->GetDescriptors()[0];
+ BluetoothRemoteGattDescriptor* descriptor2 =
+ characteristic->GetDescriptors()[1];
// Swap as needed to have descriptor1 be the one with uuid1.
if (descriptor2->GetUUID() == uuid1)
@@ -174,7 +176,7 @@ TEST_F(BluetoothGattDescriptorTest, GetUUID) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor and GetValue with empty value buffer.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_Empty) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadRemoteDescriptor_Empty) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::EXPECTED),
@@ -193,7 +195,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_Empty) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor with empty value buffer.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_Empty) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteRemoteDescriptor_Empty) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> empty_vector;
@@ -211,7 +213,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_Empty) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor completing after Chrome objects are deleted.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_AfterDeleted) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadRemoteDescriptor_AfterDeleted) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::NOT_EXPECTED),
@@ -229,7 +231,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_AfterDeleted) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor completing after Chrome objects are deleted.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_AfterDeleted) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteRemoteDescriptor_AfterDeleted) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> empty_vector;
@@ -247,7 +249,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_AfterDeleted) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor and GetValue with non-empty value buffer.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadRemoteDescriptor) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::EXPECTED),
@@ -269,7 +271,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor with non-empty value buffer.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteRemoteDescriptor) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
uint8_t values[] = {0, 1, 2, 3, 4, 0xf, 0xf0, 0xff};
@@ -286,7 +288,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor and GetValue multiple times.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_Twice) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadRemoteDescriptor_Twice) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::EXPECTED),
@@ -317,7 +319,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_Twice) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor multiple times.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_Twice) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteRemoteDescriptor_Twice) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
uint8_t values[] = {0, 1, 2, 3, 4, 0xf, 0xf0, 0xff};
@@ -346,7 +348,8 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_Twice) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor on two descriptors.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_MultipleDescriptors) {
+TEST_F(BluetoothRemoteGattDescriptorTest,
+ ReadRemoteDescriptor_MultipleDescriptors) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::EXPECTED),
@@ -376,7 +379,8 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_MultipleDescriptors) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor on two descriptors.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_MultipleDescriptors) {
+TEST_F(BluetoothRemoteGattDescriptorTest,
+ WriteRemoteDescriptor_MultipleDescriptors) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> test_vector1;
@@ -405,23 +409,23 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_MultipleDescriptors) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor asynchronous error.
-TEST_F(BluetoothGattDescriptorTest, ReadError) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadError) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::NOT_EXPECTED),
GetGattErrorCallback(Call::EXPECTED));
SimulateGattDescriptorReadError(
- descriptor1_, BluetoothGattService::GATT_ERROR_INVALID_LENGTH);
- SimulateGattDescriptorReadError(descriptor1_,
- BluetoothGattService::GATT_ERROR_FAILED);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_INVALID_LENGTH,
+ descriptor1_, BluetoothRemoteGattService::GATT_ERROR_INVALID_LENGTH);
+ SimulateGattDescriptorReadError(
+ descriptor1_, BluetoothRemoteGattService::GATT_ERROR_FAILED);
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_INVALID_LENGTH,
last_gatt_error_code_);
}
#endif // defined(OS_ANDROID)
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor asynchronous error.
-TEST_F(BluetoothGattDescriptorTest, WriteError) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteError) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> empty_vector;
@@ -429,18 +433,18 @@ TEST_F(BluetoothGattDescriptorTest, WriteError) {
GetCallback(Call::NOT_EXPECTED),
GetGattErrorCallback(Call::EXPECTED));
SimulateGattDescriptorWriteError(
- descriptor1_, BluetoothGattService::GATT_ERROR_INVALID_LENGTH);
- SimulateGattDescriptorWriteError(descriptor1_,
- BluetoothGattService::GATT_ERROR_FAILED);
+ descriptor1_, BluetoothRemoteGattService::GATT_ERROR_INVALID_LENGTH);
+ SimulateGattDescriptorWriteError(
+ descriptor1_, BluetoothRemoteGattService::GATT_ERROR_FAILED);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_INVALID_LENGTH,
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_INVALID_LENGTH,
last_gatt_error_code_);
}
#endif // defined(OS_ANDROID)
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor synchronous error.
-TEST_F(BluetoothGattDescriptorTest, ReadSynchronousError) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadSynchronousError) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
SimulateGattDescriptorReadWillFailSynchronouslyOnce(descriptor1_);
@@ -450,7 +454,8 @@ TEST_F(BluetoothGattDescriptorTest, ReadSynchronousError) {
base::RunLoop().RunUntilIdle();
EXPECT_EQ(0, callback_count_);
EXPECT_EQ(1, error_callback_count_);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_FAILED, last_gatt_error_code_);
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_FAILED,
+ last_gatt_error_code_);
// After failing once, can succeed:
ResetEventCounts();
@@ -466,7 +471,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadSynchronousError) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor synchronous error.
-TEST_F(BluetoothGattDescriptorTest, WriteSynchronousError) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteSynchronousError) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
SimulateGattDescriptorWriteWillFailSynchronouslyOnce(descriptor1_);
@@ -478,7 +483,8 @@ TEST_F(BluetoothGattDescriptorTest, WriteSynchronousError) {
base::RunLoop().RunUntilIdle();
EXPECT_EQ(0, callback_count_);
EXPECT_EQ(1, error_callback_count_);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_FAILED, last_gatt_error_code_);
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_FAILED,
+ last_gatt_error_code_);
// After failing once, can succeed:
ResetEventCounts();
@@ -493,7 +499,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteSynchronousError) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor error with a pending read operation.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_ReadPending) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadRemoteDescriptor_ReadPending) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
descriptor1_->ReadRemoteDescriptor(GetReadValueCallback(Call::EXPECTED),
@@ -505,7 +511,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_ReadPending) {
EXPECT_EQ(0, callback_count_);
EXPECT_EQ(1, error_callback_count_);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_IN_PROGRESS,
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_IN_PROGRESS,
last_gatt_error_code_);
// Initial read should still succeed:
@@ -519,7 +525,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_ReadPending) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor error with a pending write operation.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_WritePending) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteRemoteDescriptor_WritePending) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> empty_vector;
@@ -533,7 +539,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_WritePending) {
EXPECT_EQ(0, callback_count_);
EXPECT_EQ(1, error_callback_count_);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_IN_PROGRESS,
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_IN_PROGRESS,
last_gatt_error_code_);
// Initial write should still succeed:
@@ -546,7 +552,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_WritePending) {
#if defined(OS_ANDROID)
// Tests ReadRemoteDescriptor error with a pending write operation.
-TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_WritePending) {
+TEST_F(BluetoothRemoteGattDescriptorTest, ReadRemoteDescriptor_WritePending) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> empty_vector;
@@ -559,7 +565,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_WritePending) {
EXPECT_EQ(0, callback_count_);
EXPECT_EQ(1, error_callback_count_);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_IN_PROGRESS,
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_IN_PROGRESS,
last_gatt_error_code_);
// Initial write should still succeed:
@@ -572,7 +578,7 @@ TEST_F(BluetoothGattDescriptorTest, ReadRemoteDescriptor_WritePending) {
#if defined(OS_ANDROID)
// Tests WriteRemoteDescriptor error with a pending Read operation.
-TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_ReadPending) {
+TEST_F(BluetoothRemoteGattDescriptorTest, WriteRemoteDescriptor_ReadPending) {
ASSERT_NO_FATAL_FAILURE(FakeDescriptorBoilerplate());
std::vector<uint8_t> empty_vector;
@@ -585,7 +591,7 @@ TEST_F(BluetoothGattDescriptorTest, WriteRemoteDescriptor_ReadPending) {
EXPECT_EQ(0, callback_count_);
EXPECT_EQ(1, error_callback_count_);
- EXPECT_EQ(BluetoothGattService::GATT_ERROR_IN_PROGRESS,
+ EXPECT_EQ(BluetoothRemoteGattService::GATT_ERROR_IN_PROGRESS,
last_gatt_error_code_);
// Initial read should still succeed:
« no previous file with comments | « device/bluetooth/bluetooth_remote_gatt_descriptor_android.cc ('k') | device/bluetooth/bluetooth_remote_gatt_descriptor_win.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698