| Index: components/proximity_auth/ble/bluetooth_low_energy_characteristics_finder_unittest.cc
|
| diff --git a/components/proximity_auth/ble/bluetooth_low_energy_characteristics_finder_unittest.cc b/components/proximity_auth/ble/bluetooth_low_energy_characteristics_finder_unittest.cc
|
| deleted file mode 100644
|
| index 5eda18c09613132924ce0444a016c6430a14e7dc..0000000000000000000000000000000000000000
|
| --- a/components/proximity_auth/ble/bluetooth_low_energy_characteristics_finder_unittest.cc
|
| +++ /dev/null
|
| @@ -1,295 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "components/proximity_auth/ble/bluetooth_low_energy_characteristics_finder.h"
|
| -
|
| -#include <memory>
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "components/proximity_auth/ble/remote_attribute.h"
|
| -#include "device/bluetooth/bluetooth_adapter_factory.h"
|
| -#include "device/bluetooth/bluetooth_uuid.h"
|
| -#include "device/bluetooth/test/mock_bluetooth_adapter.h"
|
| -#include "device/bluetooth/test/mock_bluetooth_device.h"
|
| -#include "device/bluetooth/test/mock_bluetooth_gatt_characteristic.h"
|
| -#include "device/bluetooth/test/mock_bluetooth_gatt_service.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -using testing::_;
|
| -using testing::AtLeast;
|
| -using testing::NiceMock;
|
| -using testing::Return;
|
| -using testing::StrictMock;
|
| -using testing::SaveArg;
|
| -
|
| -namespace proximity_auth {
|
| -namespace {
|
| -
|
| -const char kDeviceName[] = "Device name";
|
| -const char kBluetoothAddress[] = "11:22:33:44:55:66";
|
| -
|
| -const char kServiceUUID[] = "DEADBEEF-CAFE-FEED-FOOD-D15EA5EBEEEF";
|
| -const char kToPeripheralCharUUID[] = "FBAE09F2-0482-11E5-8418-1697F925EC7B";
|
| -const char kFromPeripheralCharUUID[] = "5539ED10-0483-11E5-8418-1697F925EC7B";
|
| -
|
| -const char kToPeripheralCharID[] = "to peripheral id";
|
| -const char kFromPeripheralCharID[] = "from peripheral id";
|
| -
|
| -const device::BluetoothRemoteGattCharacteristic::Properties
|
| - kCharacteristicProperties =
|
| - device::BluetoothRemoteGattCharacteristic::PROPERTY_BROADCAST |
|
| - device::BluetoothRemoteGattCharacteristic::PROPERTY_READ |
|
| - device::BluetoothRemoteGattCharacteristic::
|
| - PROPERTY_WRITE_WITHOUT_RESPONSE |
|
| - device::BluetoothRemoteGattCharacteristic::PROPERTY_INDICATE;
|
| -
|
| -const char kOtherCharUUID[] = "09731422-048A-11E5-8418-1697F925EC7B";
|
| -const char kOtherCharID[] = "other id";
|
| -} // namespace
|
| -
|
| -class ProximityAuthBluetoothLowEnergyCharacteristicFinderTest
|
| - : public testing::Test {
|
| - protected:
|
| - ProximityAuthBluetoothLowEnergyCharacteristicFinderTest()
|
| - : adapter_(new NiceMock<device::MockBluetoothAdapter>),
|
| - success_callback_(base::Bind(
|
| - &ProximityAuthBluetoothLowEnergyCharacteristicFinderTest::
|
| - OnCharacteristicsFound,
|
| - base::Unretained(this))),
|
| - error_callback_(base::Bind(
|
| - &ProximityAuthBluetoothLowEnergyCharacteristicFinderTest::
|
| - OnCharacteristicsFinderError,
|
| - base::Unretained(this))),
|
| - device_(new NiceMock<device::MockBluetoothDevice>(adapter_.get(),
|
| - 0,
|
| - kDeviceName,
|
| - kBluetoothAddress,
|
| - false,
|
| - false)),
|
| - service_(new NiceMock<device::MockBluetoothGattService>(
|
| - device_.get(),
|
| - "",
|
| - device::BluetoothUUID(kServiceUUID),
|
| - true,
|
| - false)),
|
| - remote_service_({device::BluetoothUUID(kServiceUUID), ""}),
|
| - to_peripheral_char_({device::BluetoothUUID(kToPeripheralCharUUID), ""}),
|
| - from_peripheral_char_(
|
| - {device::BluetoothUUID(kFromPeripheralCharUUID), ""}) {
|
| - device::BluetoothAdapterFactory::SetAdapterForTesting(adapter_);
|
| -
|
| - // The default behavior for |device_| is to have no services discovered. Can
|
| - // be overrided later.
|
| - ON_CALL(*device_, GetGattServices())
|
| - .WillByDefault(
|
| - Return(std::vector<device::BluetoothRemoteGattService*>()));
|
| - }
|
| -
|
| - void SetUp() {
|
| - EXPECT_CALL(*adapter_, AddObserver(_));
|
| - EXPECT_CALL(*adapter_, RemoveObserver(_));
|
| - }
|
| -
|
| - MOCK_METHOD3(OnCharacteristicsFound,
|
| - void(const RemoteAttribute&,
|
| - const RemoteAttribute&,
|
| - const RemoteAttribute&));
|
| - MOCK_METHOD2(OnCharacteristicsFinderError,
|
| - void(const RemoteAttribute&, const RemoteAttribute&));
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic>
|
| - ExpectToFindCharacteristic(const device::BluetoothUUID& uuid,
|
| - const std::string& id,
|
| - bool valid) {
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> characteristic(
|
| - new NiceMock<device::MockBluetoothGattCharacteristic>(
|
| - service_.get(), id, uuid, true, kCharacteristicProperties,
|
| - device::BluetoothRemoteGattCharacteristic::PERMISSION_NONE));
|
| -
|
| - ON_CALL(*characteristic.get(), GetUUID()).WillByDefault(Return(uuid));
|
| - if (valid)
|
| - ON_CALL(*characteristic.get(), GetIdentifier()).WillByDefault(Return(id));
|
| - ON_CALL(*characteristic.get(), GetService())
|
| - .WillByDefault(Return(service_.get()));
|
| - return characteristic;
|
| - }
|
| -
|
| - scoped_refptr<device::MockBluetoothAdapter> adapter_;
|
| - BluetoothLowEnergyCharacteristicsFinder::SuccessCallback success_callback_;
|
| - BluetoothLowEnergyCharacteristicsFinder::ErrorCallback error_callback_;
|
| - std::unique_ptr<device::MockBluetoothDevice> device_;
|
| - std::unique_ptr<device::MockBluetoothGattService> service_;
|
| - RemoteAttribute remote_service_;
|
| - RemoteAttribute to_peripheral_char_;
|
| - RemoteAttribute from_peripheral_char_;
|
| -};
|
| -
|
| -TEST_F(ProximityAuthBluetoothLowEnergyCharacteristicFinderTest,
|
| - ConstructAndDestroyDontCrash) {
|
| - BluetoothLowEnergyCharacteristicsFinder characteristic_finder(
|
| - adapter_, device_.get(), remote_service_, to_peripheral_char_,
|
| - from_peripheral_char_, success_callback_, error_callback_);
|
| -}
|
| -
|
| -TEST_F(ProximityAuthBluetoothLowEnergyCharacteristicFinderTest,
|
| - FindRightCharacteristics) {
|
| - BluetoothLowEnergyCharacteristicsFinder characteristic_finder(
|
| - adapter_, device_.get(), remote_service_, to_peripheral_char_,
|
| - from_peripheral_char_, success_callback_, error_callback_);
|
| - // Upcasting |characteristic_finder| to access the virtual protected methods
|
| - // from Observer: GattCharacteristicAdded() and
|
| - // GattDiscoveryCompleteForService().
|
| - device::BluetoothAdapter::Observer* observer =
|
| - static_cast<device::BluetoothAdapter::Observer*>(&characteristic_finder);
|
| -
|
| - RemoteAttribute found_to_char, found_from_char;
|
| - EXPECT_CALL(*this, OnCharacteristicsFound(_, _, _))
|
| - .WillOnce(
|
| - DoAll(SaveArg<1>(&found_to_char), SaveArg<2>(&found_from_char)));
|
| - EXPECT_CALL(*this, OnCharacteristicsFinderError(_, _)).Times(0);
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> from_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kFromPeripheralCharUUID),
|
| - kFromPeripheralCharID, true);
|
| - observer->GattCharacteristicAdded(adapter_.get(), from_char.get());
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> to_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kToPeripheralCharUUID),
|
| - kToPeripheralCharID, true);
|
| - observer->GattCharacteristicAdded(adapter_.get(), to_char.get());
|
| -
|
| - EXPECT_EQ(kToPeripheralCharID, found_to_char.id);
|
| - EXPECT_EQ(kFromPeripheralCharID, found_from_char.id);
|
| -
|
| - EXPECT_CALL(*service_, GetUUID())
|
| - .WillOnce(Return(device::BluetoothUUID(kServiceUUID)));
|
| - observer->GattDiscoveryCompleteForService(adapter_.get(), service_.get());
|
| -}
|
| -
|
| -TEST_F(ProximityAuthBluetoothLowEnergyCharacteristicFinderTest,
|
| - DidntFindRightCharacteristics) {
|
| - BluetoothLowEnergyCharacteristicsFinder characteristic_finder(
|
| - adapter_, device_.get(), remote_service_, to_peripheral_char_,
|
| - from_peripheral_char_, success_callback_, error_callback_);
|
| - device::BluetoothAdapter::Observer* observer =
|
| - static_cast<device::BluetoothAdapter::Observer*>(&characteristic_finder);
|
| -
|
| - EXPECT_CALL(*this, OnCharacteristicsFound(_, _, _)).Times(0);
|
| - EXPECT_CALL(*this, OnCharacteristicsFinderError(_, _));
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> other_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kOtherCharUUID),
|
| - kOtherCharID, false);
|
| - observer->GattCharacteristicAdded(adapter_.get(), other_char.get());
|
| -
|
| - EXPECT_CALL(*service_, GetUUID())
|
| - .WillOnce(Return(device::BluetoothUUID(kServiceUUID)));
|
| - observer->GattDiscoveryCompleteForService(adapter_.get(), service_.get());
|
| -}
|
| -
|
| -TEST_F(ProximityAuthBluetoothLowEnergyCharacteristicFinderTest,
|
| - FindOnlyOneRightCharacteristic) {
|
| - BluetoothLowEnergyCharacteristicsFinder characteristic_finder(
|
| - adapter_, device_.get(), remote_service_, to_peripheral_char_,
|
| - from_peripheral_char_, success_callback_, error_callback_);
|
| - device::BluetoothAdapter::Observer* observer =
|
| - static_cast<device::BluetoothAdapter::Observer*>(&characteristic_finder);
|
| -
|
| - RemoteAttribute found_to_char, found_from_char;
|
| - EXPECT_CALL(*this, OnCharacteristicsFound(_, _, _)).Times(0);
|
| - EXPECT_CALL(*this, OnCharacteristicsFinderError(_, _))
|
| - .WillOnce(
|
| - DoAll(SaveArg<0>(&found_to_char), SaveArg<1>(&found_from_char)));
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> from_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kFromPeripheralCharUUID),
|
| - kFromPeripheralCharID, true);
|
| - observer->GattCharacteristicAdded(adapter_.get(), from_char.get());
|
| -
|
| - EXPECT_CALL(*service_, GetUUID())
|
| - .WillOnce(Return(device::BluetoothUUID(kServiceUUID)));
|
| - observer->GattDiscoveryCompleteForService(adapter_.get(), service_.get());
|
| - EXPECT_EQ(kFromPeripheralCharID, found_from_char.id);
|
| -}
|
| -
|
| -TEST_F(ProximityAuthBluetoothLowEnergyCharacteristicFinderTest,
|
| - FindWrongCharacteristic_FindRightCharacteristics) {
|
| - BluetoothLowEnergyCharacteristicsFinder characteristic_finder(
|
| - adapter_, device_.get(), remote_service_, to_peripheral_char_,
|
| - from_peripheral_char_, success_callback_, error_callback_);
|
| - device::BluetoothAdapter::Observer* observer =
|
| - static_cast<device::BluetoothAdapter::Observer*>(&characteristic_finder);
|
| -
|
| - RemoteAttribute found_to_char, found_from_char;
|
| - EXPECT_CALL(*this, OnCharacteristicsFound(_, _, _))
|
| - .WillOnce(
|
| - DoAll(SaveArg<1>(&found_to_char), SaveArg<2>(&found_from_char)));
|
| - EXPECT_CALL(*this, OnCharacteristicsFinderError(_, _)).Times(0);
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> other_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kOtherCharUUID),
|
| - kOtherCharID, false);
|
| - observer->GattCharacteristicAdded(adapter_.get(), other_char.get());
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> from_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kFromPeripheralCharUUID),
|
| - kFromPeripheralCharID, true);
|
| - observer->GattCharacteristicAdded(adapter_.get(), from_char.get());
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> to_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kToPeripheralCharUUID),
|
| - kToPeripheralCharID, true);
|
| - observer->GattCharacteristicAdded(adapter_.get(), to_char.get());
|
| -
|
| - EXPECT_EQ(kToPeripheralCharID, found_to_char.id);
|
| - EXPECT_EQ(kFromPeripheralCharID, found_from_char.id);
|
| -
|
| - EXPECT_CALL(*service_, GetUUID())
|
| - .WillOnce(Return(device::BluetoothUUID(kServiceUUID)));
|
| - observer->GattDiscoveryCompleteForService(adapter_.get(), service_.get());
|
| -}
|
| -
|
| -TEST_F(ProximityAuthBluetoothLowEnergyCharacteristicFinderTest,
|
| - RightCharacteristicsAlreadyPresent) {
|
| - RemoteAttribute found_to_char, found_from_char;
|
| - EXPECT_CALL(*this, OnCharacteristicsFound(_, _, _))
|
| - .WillOnce(
|
| - DoAll(SaveArg<1>(&found_to_char), SaveArg<2>(&found_from_char)));
|
| - EXPECT_CALL(*this, OnCharacteristicsFinderError(_, _)).Times(0);
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> from_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kFromPeripheralCharUUID),
|
| - kFromPeripheralCharID, true);
|
| -
|
| - std::unique_ptr<device::MockBluetoothGattCharacteristic> to_char =
|
| - ExpectToFindCharacteristic(device::BluetoothUUID(kToPeripheralCharUUID),
|
| - kToPeripheralCharID, true);
|
| -
|
| - std::vector<device::BluetoothRemoteGattService*> services;
|
| - services.push_back(service_.get());
|
| - ON_CALL(*device_, GetGattServices()).WillByDefault(Return(services));
|
| -
|
| - std::vector<device::BluetoothRemoteGattCharacteristic*> characteristics;
|
| - characteristics.push_back(from_char.get());
|
| - characteristics.push_back(to_char.get());
|
| - ON_CALL(*service_, GetCharacteristics())
|
| - .WillByDefault(Return(characteristics));
|
| -
|
| - BluetoothLowEnergyCharacteristicsFinder characteristic_finder(
|
| - adapter_, device_.get(), remote_service_, to_peripheral_char_,
|
| - from_peripheral_char_, success_callback_, error_callback_);
|
| - device::BluetoothAdapter::Observer* observer =
|
| - static_cast<device::BluetoothAdapter::Observer*>(&characteristic_finder);
|
| -
|
| - EXPECT_EQ(kToPeripheralCharID, found_to_char.id);
|
| - EXPECT_EQ(kFromPeripheralCharID, found_from_char.id);
|
| -
|
| - EXPECT_CALL(*service_, GetUUID())
|
| - .WillOnce(Return(device::BluetoothUUID(kServiceUUID)));
|
| - observer->GattDiscoveryCompleteForService(adapter_.get(), service_.get());
|
| -}
|
| -
|
| -} // namespace proximity_auth
|
|
|