1 /*
2  * Copyright (c) 2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef OHOS_ENGINE_TEST_UTILS_H
17 #define OHOS_ENGINE_TEST_UTILS_H
18 
19 #include "i_av_receiver_engine.h"
20 #include "i_av_sender_engine.h"
21 #include "av_receiver_engine_adapter.h"
22 #include "av_sender_engine_adapter.h"
23 #include "av_sender_engine_transport.h"
24 #include "av_receiver_engine_transport.h"
25 #include "audio_data.h"
26 
27 namespace OHOS {
28 namespace DistributedHardware {
29 class MockAVReceiverAdapterCallback : public AVReceiverAdapterCallback {
30 public:
MockAVReceiverAdapterCallback()31     explicit MockAVReceiverAdapterCallback() {}
~MockAVReceiverAdapterCallback()32     ~MockAVReceiverAdapterCallback() {}
OnEngineEvent(const AVTransEvent & event)33     void OnEngineEvent(const AVTransEvent &event) override {}
OnEngineMessage(const std::shared_ptr<AVTransMessage> & message)34     void OnEngineMessage(const std::shared_ptr<AVTransMessage> &message) override {}
OnEngineDataAvailable(const std::shared_ptr<AVTransBuffer> & buffer)35     void OnEngineDataAvailable(const std::shared_ptr<AVTransBuffer> &buffer) override {}
36 };
37 
38 class MockAVSenderAdapterCallback : public AVSenderAdapterCallback {
39 public:
MockAVSenderAdapterCallback()40     explicit MockAVSenderAdapterCallback() {}
~MockAVSenderAdapterCallback()41     ~MockAVSenderAdapterCallback() {}
OnEngineEvent(const AVTransEvent & event)42     void OnEngineEvent(const AVTransEvent &event) override {}
OnEngineMessage(const std::shared_ptr<AVTransMessage> & message)43     void OnEngineMessage(const std::shared_ptr<AVTransMessage> &message) override {}
44 };
45 
46 class MockAVReceiverTransportCallback : public AVReceiverTransportCallback {
47 public:
MockAVReceiverTransportCallback()48     explicit MockAVReceiverTransportCallback() {}
~MockAVReceiverTransportCallback()49     ~MockAVReceiverTransportCallback() {}
OnEngineTransEvent(const AVTransEvent & event)50     void OnEngineTransEvent(const AVTransEvent &event) override {}
OnEngineTransMessage(const std::shared_ptr<AVTransMessage> & message)51     void OnEngineTransMessage(const std::shared_ptr<AVTransMessage> &message) override {}
OnEngineTransDataAvailable(const std::shared_ptr<AudioData> & audioData)52     void OnEngineTransDataAvailable(const std::shared_ptr<AudioData> &audioData) override {}
53 };
54 
55 class MockAVSenderTransportCallback : public AVSenderTransportCallback {
56 public:
MockAVSenderTransportCallback()57     explicit MockAVSenderTransportCallback() {}
~MockAVSenderTransportCallback()58     ~MockAVSenderTransportCallback() {}
OnEngineTransEvent(const AVTransEvent & event)59     void OnEngineTransEvent(const AVTransEvent &event) override {}
OnEngineTransMessage(const std::shared_ptr<AVTransMessage> & message)60     void OnEngineTransMessage(const std::shared_ptr<AVTransMessage> &message) override {}
61 };
62 
63 class MockIAVReceiverEngine : public IAVReceiverEngine {
64 public:
MockIAVReceiverEngine()65     explicit MockIAVReceiverEngine() {}
~MockIAVReceiverEngine()66     ~MockIAVReceiverEngine() {}
67 
Initialize()68     int32_t Initialize() override
69     {
70         return 0;
71     }
72 
Start()73     int32_t Start() override
74     {
75         return 0;
76     }
77 
Stop()78     int32_t Stop() override
79     {
80         return 0;
81     }
82 
Release()83     int32_t Release() override
84     {
85         return 0;
86     }
87 
SetParameter(AVTransTag tag,const std::string & value)88     int32_t SetParameter(AVTransTag tag, const std::string &value) override
89     {
90         (void) tag;
91         (void) value;
92         return 0;
93     }
94 
SendMessage(const std::shared_ptr<AVTransMessage> & message)95     int32_t SendMessage(const std::shared_ptr<AVTransMessage> &message) override
96     {
97         return 0;
98     }
99 
CreateControlChannel(const std::vector<std::string> & dstDevIds,const ChannelAttribute & attribution)100     int32_t CreateControlChannel(const std::vector<std::string> &dstDevIds,
101         const ChannelAttribute &attribution) override
102     {
103         (void) dstDevIds;
104         (void) attribution;
105         return 0;
106     }
107 
RegisterReceiverCallback(const std::shared_ptr<IAVReceiverEngineCallback> & callback)108     int32_t RegisterReceiverCallback(const std::shared_ptr<IAVReceiverEngineCallback> &callback) override
109     {
110         (void) callback;
111         return 0;
112     }
113 
StartDumpMediaData()114     bool StartDumpMediaData() override
115     {
116         return false;
117     }
118 
StopDumpMediaData()119     bool StopDumpMediaData() override
120     {
121         return false;
122     }
123 
ReStartDumpMediaData()124     bool ReStartDumpMediaData() override
125     {
126         return false;
127     }
128 };
129 
130 class MockIAVSenderEngine : public IAVSenderEngine {
131 public:
MockIAVSenderEngine()132     explicit MockIAVSenderEngine() {}
~MockIAVSenderEngine()133     ~MockIAVSenderEngine() {}
134 
Initialize()135     int32_t Initialize() override
136     {
137         return 0;
138     }
139 
Start()140     int32_t Start() override
141     {
142         return 0;
143     }
144 
Stop()145     int32_t Stop() override
146     {
147         return 0;
148     }
149 
Release()150     int32_t Release() override
151     {
152         return 0;
153     }
154 
PushData(const std::shared_ptr<AVTransBuffer> & buffer)155     int32_t PushData(const std::shared_ptr<AVTransBuffer> &buffer) override
156     {
157         return 0;
158     }
159 
SetParameter(AVTransTag tag,const std::string & value)160     int32_t SetParameter(AVTransTag tag, const std::string &value) override
161     {
162         (void) tag;
163         (void) value;
164         return 0;
165     }
166 
SendMessage(const std::shared_ptr<AVTransMessage> & message)167     int32_t SendMessage(const std::shared_ptr<AVTransMessage> &message) override
168     {
169         return 0;
170     }
171 
CreateControlChannel(const std::vector<std::string> & dstDevIds,const ChannelAttribute & attribution)172     int32_t CreateControlChannel(const std::vector<std::string> &dstDevIds,
173         const ChannelAttribute &attribution) override
174     {
175         (void) dstDevIds;
176         (void) attribution;
177         return 0;
178     }
179 
RegisterSenderCallback(const std::shared_ptr<IAVSenderEngineCallback> & callback)180     int32_t RegisterSenderCallback(const std::shared_ptr<IAVSenderEngineCallback> &callback) override
181     {
182         (void) callback;
183         return 0;
184     }
185 
StartDumpMediaData()186     bool StartDumpMediaData() override
187     {
188         return false;
189     }
190 
StopDumpMediaData()191     bool StopDumpMediaData() override
192     {
193         return false;
194     }
195 
ReStartDumpMediaData()196     bool ReStartDumpMediaData() override
197     {
198         return false;
199     }
200 };
201 
202 class MockIAVSenderEngineForFail : public IAVSenderEngine {
203 public:
MockIAVSenderEngineForFail()204     explicit MockIAVSenderEngineForFail() {}
~MockIAVSenderEngineForFail()205     ~MockIAVSenderEngineForFail() {}
206 
Initialize()207     int32_t Initialize() override
208     {
209         return 0;
210     }
211 
Start()212     int32_t Start() override
213     {
214         return 0;
215     }
216 
Stop()217     int32_t Stop() override
218     {
219         return 0;
220     }
221 
Release()222     int32_t Release() override
223     {
224         return 1;
225     }
226 
PushData(const std::shared_ptr<AVTransBuffer> & buffer)227     int32_t PushData(const std::shared_ptr<AVTransBuffer> &buffer) override
228     {
229         return 0;
230     }
231 
SetParameter(AVTransTag tag,const std::string & value)232     int32_t SetParameter(AVTransTag tag, const std::string &value) override
233     {
234         (void) tag;
235         (void) value;
236         return 0;
237     }
238 
SendMessage(const std::shared_ptr<AVTransMessage> & message)239     int32_t SendMessage(const std::shared_ptr<AVTransMessage> &message) override
240     {
241         return 0;
242     }
243 
CreateControlChannel(const std::vector<std::string> & dstDevIds,const ChannelAttribute & attribution)244     int32_t CreateControlChannel(const std::vector<std::string> &dstDevIds,
245         const ChannelAttribute &attribution) override
246     {
247         (void) dstDevIds;
248         (void) attribution;
249         return 1;
250     }
251 
RegisterSenderCallback(const std::shared_ptr<IAVSenderEngineCallback> & callback)252     int32_t RegisterSenderCallback(const std::shared_ptr<IAVSenderEngineCallback> &callback) override
253     {
254         (void) callback;
255         return 0;
256     }
257 
StartDumpMediaData()258     bool StartDumpMediaData() override
259     {
260         return false;
261     }
262 
StopDumpMediaData()263     bool StopDumpMediaData() override
264     {
265         return false;
266     }
267 
ReStartDumpMediaData()268     bool ReStartDumpMediaData() override
269     {
270         return false;
271     }
272 };
273 } // DistributedHardware
274 } // OHOS
275 #endif // OHOS_ENGINE_TEST_UTILS_H