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