Home | History | Annotate | Download | only in test
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_DEVICE_H_
      6 #define DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_DEVICE_H_
      7 
      8 #include <string>
      9 
     10 #include "base/strings/string16.h"
     11 #include "device/bluetooth/bluetooth_device.h"
     12 #include "device/bluetooth/bluetooth_uuid.h"
     13 #include "testing/gmock/include/gmock/gmock.h"
     14 
     15 namespace device {
     16 
     17 class MockBluetoothAdapter;
     18 
     19 class MockBluetoothDevice : public BluetoothDevice {
     20  public:
     21   MockBluetoothDevice(MockBluetoothAdapter* adapter,
     22                       uint32 bluetooth_class,
     23                       const std::string& name,
     24                       const std::string& address,
     25                       bool paired,
     26                       bool connected);
     27   virtual ~MockBluetoothDevice();
     28 
     29   MOCK_METHOD1(AddObserver, void(BluetoothDevice::Observer*));
     30   MOCK_METHOD1(RemoveObserver, void(BluetoothDevice::Observer*));
     31   MOCK_CONST_METHOD0(GetBluetoothClass, uint32());
     32   MOCK_CONST_METHOD0(GetDeviceName, std::string());
     33   MOCK_CONST_METHOD0(GetAddress, std::string());
     34   MOCK_CONST_METHOD0(GetVendorIDSource, BluetoothDevice::VendorIDSource());
     35   MOCK_CONST_METHOD0(GetVendorID, uint16());
     36   MOCK_CONST_METHOD0(GetProductID, uint16());
     37   MOCK_CONST_METHOD0(GetDeviceID, uint16());
     38   MOCK_CONST_METHOD0(GetName, base::string16());
     39   MOCK_CONST_METHOD0(GetDeviceType, BluetoothDevice::DeviceType());
     40   MOCK_CONST_METHOD0(GetRSSI, int());
     41   MOCK_CONST_METHOD0(GetCurrentHostTransmitPower, int());
     42   MOCK_CONST_METHOD0(GetMaximumHostTransmitPower, int());
     43   MOCK_CONST_METHOD0(IsPaired, bool());
     44   MOCK_CONST_METHOD0(IsConnected, bool());
     45   MOCK_CONST_METHOD0(IsConnectable, bool());
     46   MOCK_CONST_METHOD0(IsConnecting, bool());
     47   MOCK_CONST_METHOD0(GetUUIDs, UUIDList());
     48   MOCK_CONST_METHOD0(ExpectingPinCode, bool());
     49   MOCK_CONST_METHOD0(ExpectingPasskey, bool());
     50   MOCK_CONST_METHOD0(ExpectingConfirmation, bool());
     51   MOCK_METHOD3(Connect,
     52                void(BluetoothDevice::PairingDelegate* pairing_delegate,
     53                     const base::Closure& callback,
     54                     const BluetoothDevice::ConnectErrorCallback&
     55                         error_callback));
     56   MOCK_METHOD1(SetPinCode, void(const std::string&));
     57   MOCK_METHOD1(SetPasskey, void(uint32));
     58   MOCK_METHOD0(ConfirmPairing, void());
     59   MOCK_METHOD0(RejectPairing, void());
     60   MOCK_METHOD0(CancelPairing, void());
     61   MOCK_METHOD2(Disconnect,
     62                void(const base::Closure& callback,
     63                     const BluetoothDevice::ErrorCallback& error_callback));
     64   MOCK_METHOD1(Forget, void(const BluetoothDevice::ErrorCallback&));
     65   MOCK_METHOD3(ConnectToService,
     66                void(const BluetoothUUID& uuid,
     67                     const ConnectToServiceCallback& callback,
     68                     const ConnectToServiceErrorCallback& error_callback));
     69   MOCK_METHOD2(CreateGattConnection,
     70                void(const GattConnectionCallback& callback,
     71                     const ConnectErrorCallback& error_callback));
     72 
     73   MOCK_METHOD2(StartConnectionMonitor,
     74                void(const base::Closure& callback,
     75                     const BluetoothDevice::ErrorCallback& error_callback));
     76 
     77   MOCK_CONST_METHOD0(GetGattServices, std::vector<BluetoothGattService*>());
     78   MOCK_CONST_METHOD1(GetGattService, BluetoothGattService*(const std::string&));
     79 
     80  private:
     81   uint32 bluetooth_class_;
     82   std::string name_;
     83   std::string address_;
     84   BluetoothDevice::UUIDList uuids_;
     85 };
     86 
     87 }  // namespace device
     88 
     89 #endif  // DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_DEVICE_H_
     90