Chromium Code Reviews| Index: device/bluetooth/bluetooth_remote_gatt_characteristic_unittest.cc |
| diff --git a/device/bluetooth/bluetooth_remote_gatt_characteristic_unittest.cc b/device/bluetooth/bluetooth_remote_gatt_characteristic_unittest.cc |
| index cc2186403f75d4fa8947fbfdec457d925a7a5e7c..31cbda1d7681d590fddd6312c73e622efc538a5d 100644 |
| --- a/device/bluetooth/bluetooth_remote_gatt_characteristic_unittest.cc |
| +++ b/device/bluetooth/bluetooth_remote_gatt_characteristic_unittest.cc |
| @@ -383,8 +383,7 @@ TEST_F(BluetoothRemoteGattCharacteristicTest, ReadRemoteCharacteristic) { |
| GetReadValueCallback(Call::EXPECTED), |
| GetGattErrorCallback(Call::NOT_EXPECTED)); |
| - uint8_t values[] = {0, 1, 2, 3, 4, 0xf, 0xf0, 0xff}; |
| - std::vector<uint8_t> test_vector(values, values + arraysize(values)); |
| + std::vector<uint8_t> test_vector = {0, 1, 2, 3, 4, 0xf, 0xf0, 0xff}; |
| SimulateGattCharacteristicRead(characteristic1_, test_vector); |
| // Duplicate read reported from OS shouldn't cause a problem: |
| @@ -398,6 +397,32 @@ TEST_F(BluetoothRemoteGattCharacteristicTest, ReadRemoteCharacteristic) { |
| #endif // defined(OS_ANDROID) || defined(OS_WIN) |
| #if defined(OS_ANDROID) || defined(OS_WIN) |
| +// Tests that ReadRemoteCharacteristic results in a |
| +// GattCharacteristicValueChanged call. |
| +TEST_F(BluetoothRemoteGattCharacteristicTest, |
| + ReadRemoteCharacteristic_GattCharacteristicValueChanged) { |
| + ASSERT_NO_FATAL_FAILURE(FakeCharacteristicBoilerplate( |
| + BluetoothRemoteGattCharacteristic::PROPERTY_READ)); |
| + |
| + TestBluetoothAdapterObserver observer(adapter_); |
| + |
| + characteristic1_->ReadRemoteCharacteristic( |
| + GetReadValueCallback(Call::EXPECTED), |
| + GetGattErrorCallback(Call::NOT_EXPECTED)); |
| + |
| + std::vector<uint8_t> test_vector = {0, 1, 2, 3, 4, 0xf, 0xf0, 0xff}; |
| + SimulateGattCharacteristicRead(characteristic1_, test_vector); |
| + |
| + // TODO(http://crbug.com/580406): Make sure GattCharacteristicValueChanged |
|
scheib
2016/06/23 20:36:48
You can probably do this with not so much extra wo
ortuno
2016/06/23 22:57:40
I tried using a lambda for the callback but it fai
|
| + // is called before the callback is run. |
| + EXPECT_EQ(1, observer.gatt_characteristic_value_changed_count()); |
| + EXPECT_EQ(1, gatt_read_characteristic_attempts_); |
| + EXPECT_EQ(test_vector, last_read_value_); |
|
scheib
2016/06/23 20:36:48
Can simplify this test to just the observer.gatt_c
ortuno
2016/06/23 22:57:41
Changed to more appropriate checks.
|
| + EXPECT_EQ(test_vector, characteristic1_->GetValue()); |
| +} |
| +#endif // defined(OS_ANDROID) || defined(OS_WIN) |
| + |
| +#if defined(OS_ANDROID) || defined(OS_WIN) |
| // Tests WriteRemoteCharacteristic with non-empty value buffer. |
| TEST_F(BluetoothRemoteGattCharacteristicTest, WriteRemoteCharacteristic) { |
| ASSERT_NO_FATAL_FAILURE(FakeCharacteristicBoilerplate( |