1 /* 2 * Copyright 2019 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #pragma once 18 19 #include "l2cap/internal/data_pipeline_manager.h" 20 21 #include "l2cap/internal/channel_impl.h" 22 #include "l2cap/internal/data_controller.h" 23 24 #include <gmock/gmock.h> 25 26 // Unit test interfaces 27 namespace bluetooth { 28 namespace l2cap { 29 namespace internal { 30 namespace testing { 31 32 class MockDataPipelineManager : public DataPipelineManager { 33 public: MockDataPipelineManager(os::Handler * handler,LowerQueueUpEnd * link_queue_up_end)34 MockDataPipelineManager(os::Handler* handler, LowerQueueUpEnd* link_queue_up_end) 35 : DataPipelineManager(handler, nullptr, link_queue_up_end) {} 36 MOCK_METHOD(void, AttachChannel, (Cid, std::shared_ptr<ChannelImpl>, ChannelMode), (override)); 37 MOCK_METHOD(void, DetachChannel, (Cid), (override)); 38 MOCK_METHOD(DataController*, GetDataController, (Cid), (override)); 39 MOCK_METHOD(void, OnPacketSent, (Cid), (override)); 40 }; 41 42 } // namespace testing 43 } // namespace internal 44 } // namespace l2cap 45 } // namespace bluetooth 46