15c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// Copyright 2014 The Chromium Authors. All rights reserved. 25c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// Use of this source code is governed by a BSD-style license that can be 35c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// found in the LICENSE file. 45c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 55c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#ifndef DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_GATT_SERVICE_H_ 65c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#define DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_GATT_SERVICE_H_ 75c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 85c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include <string> 95c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include <vector> 105c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 115c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include "device/bluetooth/bluetooth_gatt_service.h" 125c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include "device/bluetooth/bluetooth_uuid.h" 135c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include "testing/gmock/include/gmock/gmock.h" 145c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 155c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liunamespace device { 165c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 175c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liuclass BluetoothGattCharacteristic; 185c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liuclass MockBluetoothDevice; 195c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 205c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liuclass MockBluetoothGattService : public BluetoothGattService { 215c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu public: 225c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MockBluetoothGattService(MockBluetoothDevice* device, 235c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu const std::string& identifier, 245c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu const BluetoothUUID& uuid, 255c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu bool is_primary, 265c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu bool is_local); 275c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual ~MockBluetoothGattService(); 285c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 295c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(GetIdentifier, std::string()); 305c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(GetUUID, BluetoothUUID()); 315c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(IsLocal, bool()); 325c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(IsPrimary, bool()); 335c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(GetDevice, BluetoothDevice*()); 345c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(GetCharacteristics, 355c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu std::vector<BluetoothGattCharacteristic*>()); 365c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD0(GetIncludedServices, std::vector<BluetoothGattService*>()); 375c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_CONST_METHOD1(GetCharacteristic, 385c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu BluetoothGattCharacteristic*(const std::string&)); 395c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_METHOD1(AddCharacteristic, bool(BluetoothGattCharacteristic*)); 405c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_METHOD1(AddIncludedService, bool(BluetoothGattService*)); 415c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_METHOD2(Register, void(const base::Closure&, const ErrorCallback&)); 425c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu MOCK_METHOD2(Unregister, void(const base::Closure&, const ErrorCallback&)); 435c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 445c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu private: 455c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu DISALLOW_COPY_AND_ASSIGN(MockBluetoothGattService); 465c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu}; 475c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 485c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu} // namespace device 495c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 505c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#endif // DEVICE_BLUETOOTH_TEST_MOCK_BLUETOOTH_GATT_SERVICE_H_ 51