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_CONST_METHOD0(GetBluetoothClass, uint32());
     30   MOCK_CONST_METHOD0(GetDeviceName, std::string());
     31   MOCK_CONST_METHOD0(GetAddress, std::string());
     32   MOCK_CONST_METHOD0(GetVendorIDSource, BluetoothDevice::VendorIDSource());
     33   MOCK_CONST_METHOD0(GetVendorID, uint16());
     34   MOCK_CONST_METHOD0(GetProductID, uint16());
     35   MOCK_CONST_METHOD0(GetDeviceID, uint16());
     36   MOCK_CONST_METHOD0(GetName, base::string16());
     37   MOCK_CONST_METHOD0(GetDeviceType, BluetoothDevice::DeviceType());
     38   MOCK_CONST_METHOD0(GetRSSI, int());
     39   MOCK_CONST_METHOD0(GetCurrentHostTransmitPower, int());
     40   MOCK_CONST_METHOD0(GetMaximumHostTransmitPower, int());
     41   MOCK_CONST_METHOD0(IsPaired, bool());
     42   MOCK_CONST_METHOD0(IsConnected, bool());
     43   MOCK_CONST_METHOD0(IsConnectable, bool());
     44   MOCK_CONST_METHOD0(IsConnecting, bool());
     45   MOCK_CONST_METHOD0(GetUUIDs, UUIDList());
     46   MOCK_CONST_METHOD0(ExpectingPinCode, bool());
     47   MOCK_CONST_METHOD0(ExpectingPasskey, bool());
     48   MOCK_CONST_METHOD0(ExpectingConfirmation, bool());
     49   MOCK_METHOD3(Connect,
     50                void(BluetoothDevice::PairingDelegate* pairing_delegate,
     51                     const base::Closure& callback,
     52                     const BluetoothDevice::ConnectErrorCallback&
     53                         error_callback));
     54   MOCK_METHOD1(SetPinCode, void(const std::string&));
     55   MOCK_METHOD1(SetPasskey, void(uint32));
     56   MOCK_METHOD0(ConfirmPairing, void());
     57   MOCK_METHOD0(RejectPairing, void());
     58   MOCK_METHOD0(CancelPairing, void());
     59   MOCK_METHOD2(Disconnect,
     60                void(const base::Closure& callback,
     61                     const BluetoothDevice::ErrorCallback& error_callback));
     62   MOCK_METHOD1(Forget, void(const BluetoothDevice::ErrorCallback&));
     63   MOCK_METHOD3(ConnectToService,
     64                void(const BluetoothUUID& uuid,
     65                     const ConnectToServiceCallback& callback,
     66                     const ConnectToServiceErrorCallback& error_callback));
     67   MOCK_METHOD2(CreateGattConnection,
     68                void(const GattConnectionCallback& callback,
     69                     const ConnectErrorCallback& error_callback));
     70 
     71   MOCK_METHOD2(StartConnectionMonitor,
     72                void(const base::Closure& callback,
     73                     const BluetoothDevice::ErrorCallback& error_callback));
     74 
     75   MOCK_CONST_METHOD0(GetGattServices, std::vector<BluetoothGattService*>());
     76   MOCK_CONST_METHOD1(GetGattService, BluetoothGattService*(const std::string&));
     77 
     78  private:
     79   uint32 bluetooth_class_;
     80   std::string name_;
     81   std::string address_;
     82   BluetoothDevice::UUIDList uuids_;
     83 };
     84 
     85 }  // namespace device
     86 
     87 #endif  // DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_DEVICE_H_
     88