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 #include <gtest/gtest.h>
17 #include "avsession_radar.h"
18 #include "avsession_log.h"
19 
20 using namespace testing::ext;
21 using namespace OHOS::AVSession;
22 
23 class AVSessionRadarTest : public testing::Test {
24 public:
25     static void SetUpTestCase(void);
26     static void TearDownTestCase(void);
27     void SetUp();
28     void TearDown();
29 
30     OutputDeviceInfo outDeviceInfo_;
31 };
32 
SetUpTestCase()33 void AVSessionRadarTest::SetUpTestCase()
34 {}
35 
TearDownTestCase()36 void AVSessionRadarTest::TearDownTestCase()
37 {}
38 
SetUp()39 void AVSessionRadarTest::SetUp()
40 {
41     AVSessionRadar::GetInstance().InitBMS();
42     DeviceInfo deviceInfo;
43     deviceInfo.castCategory_ = 1;
44     deviceInfo.deviceId_ = "abcdefghijklmnopkrst";
45     deviceInfo.deviceName_ = "phone";
46     deviceInfo.networkId_ = "1234567890123456789";
47     deviceInfo.deviceType_ = 0xE;
48     deviceInfo.authenticationStatus_ = 0;
49     outDeviceInfo_.deviceInfos_.push_back(deviceInfo);
50 }
51 
TearDown()52 void AVSessionRadarTest::TearDown()
53 {}
54 
55 /**
56 * @tc.name: AVSessionRadarGetAnonymousDeviceId001
57 * @tc.desc: Get Anonymous DeviceId
58 * @tc.type: FUNC
59 * @tc.require:
60 */
61 static HWTEST_F(AVSessionRadarTest, AVSessionRadarGetAnonymousDeviceId001, TestSize.Level1)
62 {
63     std::string deviceId = "abcdefghijklmnopkrst";
64     std::string ret = AVSessionRadar::GetAnonymousDeviceId(deviceId);
65     EXPECT_EQ(ret, "abcde**pkrst");
66 }
67 
68 /**
69 * @tc.name: AVSessionRadarGetRadarErrorCode001
70 * @tc.desc: Get Radar ErrorCode
71 * @tc.type: FUNC
72 * @tc.require:
73 */
74 static HWTEST_F(AVSessionRadarTest, AVSessionRadarGetRadarErrorCode001, TestSize.Level1)
75 {
76     int32_t error = -1020;
77     int32_t ret = AVSessionRadar::GetRadarErrorCode(error);
78     EXPECT_EQ(ret, 475137020);
79 }
80 
81 /**
82 * @tc.name: AVSessionRadarGetPeerInfo001
83 * @tc.desc: get peer info from outputDeviceInfo
84 * @tc.type: FUNC
85 * @tc.require:
86 */
87 static HWTEST_F(AVSessionRadarTest, AVSessionRadarGetPeerInfo001, TestSize.Level1)
88 {
89     AVSessionRadarInfo info("AVSessionRadarGetPeerInfo001");
90     AVSessionRadar::GetInstance().GetPeerInfo(outDeviceInfo_, info);
91     EXPECT_EQ(info.peerBtMac_, "");
92     EXPECT_EQ(info.peerDevType_, "00E");
93     EXPECT_EQ(info.isTrust_, static_cast<int32_t>(TrustStatus::UNTRUST));
94 }
95 
96 /**
97 * @tc.name: AVSessionRadarStartCastDiscoveryBegin001
98 * @tc.desc: Start Cast Discovery Begin
99 * @tc.type: FUNC
100 * @tc.require:
101 */
102 static HWTEST_F(AVSessionRadarTest, AVSessionRadarStartCastDiscoveryBegin001, TestSize.Level1)
103 {
104     AVSessionRadarInfo info("AVSessionRadarStartCastDiscoveryBegin001");
105     AVSessionRadar::GetInstance().StartCastDiscoveryBegin(info);
106     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
107     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::START));
108     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
109     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
110 }
111 
112 /**
113 * @tc.name: AVSessionRadarStartCastDiscoveryEnd001
114 * @tc.desc: Start Cast Discovery End
115 * @tc.type: FUNC
116 * @tc.require:
117 */
118 static HWTEST_F(AVSessionRadarTest, AVSessionRadarStartCastDiscoveryEnd001, TestSize.Level1)
119 {
120     AVSessionRadarInfo info("AVSessionRadarStartCastDiscoveryEnd001");
121     AVSessionRadar::GetInstance().StartCastDiscoveryEnd(info);
122     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
123     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::START));
124     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
125     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
126 }
127 
128 /**
129 * @tc.name: AVSessionRadarFailToStartCastDiscovery001
130 * @tc.desc: Fail To StartCastDiscovery
131 * @tc.type: FUNC
132 * @tc.require:
133 */
134 static HWTEST_F(AVSessionRadarTest, AVSessionRadarFailToStartCastDiscovery001, TestSize.Level1)
135 {
136     AVSessionRadarInfo info("AVSessionRadarFailToStartCastDiscovery001");
137     AVSessionRadar::GetInstance().FailToStartCastDiscovery(info);
138     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
139     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::START));
140     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
141     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
142 }
143 
144 /**
145 * @tc.name: AVSessionRadarCastDeviceAvailable001
146 * @tc.desc: Cast Device Available
147 * @tc.type: FUNC
148 * @tc.require:
149 */
150 static HWTEST_F(AVSessionRadarTest, AVSessionRadarCastDeviceAvailable001, TestSize.Level1)
151 {
152     AVSessionRadarInfo info("AVSessionRadarCastDeviceAvailable001");
153     AVSessionRadar::GetInstance().CastDeviceAvailable(outDeviceInfo_, info);
154     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
155     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::DISPLAY));
156     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
157     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
158 }
159 
160 /**
161 * @tc.name: AVSessionStopCastDiscoveryBegin001
162 * @tc.desc: Stop Cast Discovery Begin
163 * @tc.type: FUNC
164 * @tc.require:
165 */
166 static HWTEST_F(AVSessionRadarTest, AVSessionStopCastDiscoveryBegin001, TestSize.Level1)
167 {
168     AVSessionRadarInfo info("AVSessionStopCastDiscoveryBegin001");
169     AVSessionRadar::GetInstance().StopCastDiscoveryBegin(info);
170     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
171     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::STOP));
172     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
173     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
174 }
175 
176 /**
177 * @tc.name: AVSessionStopCastDiscoveryEnd001
178 * @tc.desc: Stop Cast Discovery End
179 * @tc.type: FUNC
180 * @tc.require:
181 */
182 static HWTEST_F(AVSessionRadarTest, AVSessionStopCastDiscoveryEnd001, TestSize.Level1)
183 {
184     AVSessionRadarInfo info("AVSessionStopCastDiscoveryEnd001");
185     AVSessionRadar::GetInstance().StopCastDiscoveryEnd(info);
186     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
187     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::STOP));
188     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
189     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
190 }
191 
192 /**
193 * @tc.name: AVSessionFailToStopCastDiscovery001
194 * @tc.desc: Fail To Stop CastDiscovery
195 * @tc.type: FUNC
196 * @tc.require:
197 */
198 static HWTEST_F(AVSessionRadarTest, AVSessionFailToStopCastDiscovery001, TestSize.Level1)
199 {
200     AVSessionRadarInfo info("AVSessionFailToStopCastDiscovery001");
201     AVSessionRadar::GetInstance().FailToStopCastDiscovery(info);
202     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_DISCOVERY));
203     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::STOP));
204     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
205     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
206 }
207 
208 /**
209 * @tc.name: AVSessionStartCastBegin001
210 * @tc.desc: Start Cast Begin
211 * @tc.type: FUNC
212 * @tc.require:
213 */
214 static HWTEST_F(AVSessionRadarTest, AVSessionStartCastBegin001, TestSize.Level1)
215 {
216     AVSessionRadarInfo info("AVSessionStartCastBegin001");
217     AVSessionRadar::GetInstance().StartCastBegin(outDeviceInfo_, info);
218     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
219     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::START));
220     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
221     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
222 }
223 
224 /**
225 * @tc.name: AVSessionStartCastEnd001
226 * @tc.desc: Start Cast End
227 * @tc.type: FUNC
228 * @tc.require:
229 */
230 static HWTEST_F(AVSessionRadarTest, AVSessionStartCastEnd001, TestSize.Level1)
231 {
232     AVSessionRadarInfo info("AVSessionStartCastEnd001");
233     AVSessionRadar::GetInstance().StartCastEnd(outDeviceInfo_, info);
234     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
235     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastDiscoveryStage::START));
236     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
237     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
238 }
239 
240 /**
241 * @tc.name: AVSessionFailToStartCast001
242 * @tc.desc: Fail To StartCast
243 * @tc.type: FUNC
244 * @tc.require:
245 */
246 static HWTEST_F(AVSessionRadarTest, AVSessionFailToStartCast001, TestSize.Level1)
247 {
248     AVSessionRadarInfo info("AVSessionFailToStartCast001");
249     AVSessionRadar::GetInstance().FailToStartCast(info);
250     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
251     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::START));
252     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
253     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
254 }
255 
256 /**
257 * @tc.name: AVSessionFailToStartCast002
258 * @tc.desc: Fail To StartCast with outputDeviceInfo
259 * @tc.type: FUNC
260 * @tc.require:
261 */
262 static HWTEST_F(AVSessionRadarTest, AVSessionFailToStartCast002, TestSize.Level1)
263 {
264     AVSessionRadarInfo info("AVSessionFailToStartCast002");
265     AVSessionRadar::GetInstance().FailToStartCast(outDeviceInfo_, info);
266     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
267     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::START));
268     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
269     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
270 }
271 
272 /**
273 * @tc.name: AVSessionStartConnect001
274 * @tc.desc: Start Connect
275 * @tc.type: FUNC
276 * @tc.require:
277 */
278 static HWTEST_F(AVSessionRadarTest, AVSessionStartConnect001, TestSize.Level1)
279 {
280     AVSessionRadarInfo info("AVSessionStartConnect001");
281     AVSessionRadar::GetInstance().StartConnect(info);
282     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
283     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::CONNECT));
284     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
285     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
286 }
287 
288 /**
289 * @tc.name: AVSessionConnectFinish001
290 * @tc.desc: Connect Finish
291 * @tc.type: FUNC
292 * @tc.require:
293 */
294 static HWTEST_F(AVSessionRadarTest, AVSessionConnectFinish001, TestSize.Level1)
295 {
296     AVSessionRadarInfo info("AVSessionConnectFinish001");
297     AVSessionRadar::GetInstance().ConnectFinish(outDeviceInfo_.deviceInfos_[0], info);
298     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
299     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::CONNECT));
300     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
301     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
302 }
303 
304 /**
305 * @tc.name: AVSessionStartPlayBegin001
306 * @tc.desc: Start Play Begin
307 * @tc.type: FUNC
308 * @tc.require:
309 */
310 static HWTEST_F(AVSessionRadarTest, AVSessionStartPlayBegin001, TestSize.Level1)
311 {
312     AVSessionRadarInfo info("AVSessionStartPlayBegin001");
313     AVSessionRadar::GetInstance().StartPlayBegin(info);
314     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
315     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::STARTED));
316     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
317     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
318 }
319 
320 /**
321 * @tc.name: AVSessionStartPlayEnd001
322 * @tc.desc: Start Play End
323 * @tc.type: FUNC
324 * @tc.require:
325 */
326 static HWTEST_F(AVSessionRadarTest, AVSessionStartPlayEnd001, TestSize.Level1)
327 {
328     AVSessionRadarInfo info("AVSessionStartPlayEnd001");
329     AVSessionRadar::GetInstance().StartPlayEnd(info);
330     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
331     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::STARTED));
332     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
333     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
334 }
335 
336 /**
337 * @tc.name: AVSessionStartPlayFailed001
338 * @tc.desc: Start Play Failed
339 * @tc.type: FUNC
340 * @tc.require:
341 */
342 static HWTEST_F(AVSessionRadarTest, AVSessionStartPlayFailed001, TestSize.Level1)
343 {
344     AVSessionRadarInfo info("AVSessionStartPlayFailed001");
345     AVSessionRadar::GetInstance().StartPlayFailed(info);
346     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
347     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::STARTED));
348     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
349     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
350 }
351 
352 /**
353 * @tc.name: AVSessionPlayerStarted001
354 * @tc.desc: Player Started
355 * @tc.type: FUNC
356 * @tc.require:
357 */
358 static HWTEST_F(AVSessionRadarTest, AVSessionPlayerStarted001, TestSize.Level1)
359 {
360     AVSessionRadarInfo info("AVSessionPlayerStarted001");
361     AVSessionRadar::GetInstance().PlayerStarted(info);
362     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_START));
363     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStartStage::STARTED));
364     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
365     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
366 }
367 
368 /**
369 * @tc.name: AVSessionSendControlCommandBegin001
370 * @tc.desc: Send Control Command begin
371 * @tc.type: FUNC
372 * @tc.require:
373 */
374 static HWTEST_F(AVSessionRadarTest, AVSessionSendControlCommandBegin001, TestSize.Level1)
375 {
376     AVSessionRadarInfo info("AVSessionSendControlCommandEnd001");
377     AVSessionRadar::GetInstance().SendControlCommandBegin(info);
378     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_CONTROL));
379     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastControlStage::SEND_COMMAND));
380     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
381     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
382 }
383 
384 /**
385 * @tc.name: AVSessionSendControlCommandEnd001
386 * @tc.desc: Send Control Command end
387 * @tc.type: FUNC
388 * @tc.require:
389 */
390 static HWTEST_F(AVSessionRadarTest, AVSessionSendControlCommandEnd001, TestSize.Level1)
391 {
392     AVSessionRadarInfo info("AVSessionSendControlCommandEnd001");
393     AVSessionRadar::GetInstance().SendControlCommandEnd(info);
394     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_CONTROL));
395     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastControlStage::SEND_COMMAND));
396     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
397     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
398 }
399 
400 /**
401 * @tc.name: AVSessionFailToSendControlCommand001
402 * @tc.desc: Fail To SendControlCommand
403 * @tc.type: FUNC
404 * @tc.require:
405 */
406 static HWTEST_F(AVSessionRadarTest, AVSessionFailToSendControlCommand001, TestSize.Level1)
407 {
408     AVSessionRadarInfo info("AVSessionFailToSendControlCommand001");
409     AVSessionRadar::GetInstance().FailToSendControlCommand(info);
410     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_CONTROL));
411     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastControlStage::SEND_COMMAND));
412     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
413     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
414 }
415 
416 /**
417 * @tc.name: AVSessionControlCommandRespond001
418 * @tc.desc: receive control command respond
419 * @tc.type: FUNC
420 * @tc.require:
421 */
422 static HWTEST_F(AVSessionRadarTest, AVSessionControlCommandRespond001, TestSize.Level1)
423 {
424     AVSessionRadarInfo info("AVSessionControlCommandRespond001");
425     AVSessionRadar::GetInstance().ControlCommandRespond(info);
426     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_CONTROL));
427     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastControlStage::RECV_COMMAND));
428     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
429     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
430 }
431 
432 /**
433 * @tc.name: AVSessionControlCommandError001
434 * @tc.desc: receive control command error respond
435 * @tc.type: FUNC
436 * @tc.require:
437 */
438 static HWTEST_F(AVSessionRadarTest, AVSessionControlCommandError001, TestSize.Level1)
439 {
440     AVSessionRadarInfo info("AVSessionControlCommandError001");
441     AVSessionRadar::GetInstance().ControlCommandError(info);
442     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_CONTROL));
443     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastControlStage::RECV_COMMAND));
444     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
445     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
446 }
447 
448 /**
449 * @tc.name: AVSessionStopCastBegin001
450 * @tc.desc: invoke Stop Casting function Begin
451 * @tc.type: FUNC
452 * @tc.require:
453 */
454 static HWTEST_F(AVSessionRadarTest, AVSessionStopCastBegin001, TestSize.Level1)
455 {
456     AVSessionRadarInfo info("AVSessionStopCastBegin001");
457     AVSessionRadar::GetInstance().StopCastBegin(outDeviceInfo_, info);
458     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_END));
459     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStopStage::STOP_BEGIN));
460     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::IDLE));
461     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::BEGIN));
462 }
463 
464 /**
465 * @tc.name: AVSessionStopCastEnd001
466 * @tc.desc: invoke Stop Casting function End
467 * @tc.type: FUNC
468 * @tc.require:
469 */
470 static HWTEST_F(AVSessionRadarTest, AVSessionStopCastEnd001, TestSize.Level1)
471 {
472     AVSessionRadarInfo info("AVSessionStopCastEnd001");
473     AVSessionRadar::GetInstance().StopCastEnd(outDeviceInfo_, info);
474     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_END));
475     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStopStage::STOP_BEGIN));
476     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
477     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
478 }
479 
480 /**
481 * @tc.name: AVSessionStopCastFinish001
482 * @tc.desc: cast session is finished
483 * @tc.type: FUNC
484 * @tc.require:
485 */
486 static HWTEST_F(AVSessionRadarTest, AVSessionStopCastFinish001, TestSize.Level1)
487 {
488     AVSessionRadarInfo info("AVSessionStopCastFinish001");
489     AVSessionRadar::GetInstance().StopCastFinish(outDeviceInfo_.deviceInfos_[0], info);
490     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_END));
491     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStopStage::STOP_END));
492     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::SUCCESS));
493     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
494 }
495 
496 /**
497 * @tc.name: AVSessionFailToStopCast001
498 * @tc.desc: Fail To Stop Cast
499 * @tc.type: FUNC
500 * @tc.require:
501 */
502 static HWTEST_F(AVSessionRadarTest, AVSessionFailToStopCast001, TestSize.Level1)
503 {
504     AVSessionRadarInfo info("AVSessionFailToStopCast001");
505     AVSessionRadar::GetInstance().FailToStopCast(info);
506     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_END));
507     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStopStage::STOP_BEGIN));
508     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
509     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
510 }
511 
512 /**
513 * @tc.name: AVSessionFailToStopCast002
514 * @tc.desc: Fail To Stop Cast with outputDeviceInfo
515 * @tc.type: FUNC
516 * @tc.require:
517 */
518 static HWTEST_F(AVSessionRadarTest, AVSessionFailToStopCast002, TestSize.Level1)
519 {
520     AVSessionRadarInfo info("AVSessionFailToStopCast002");
521     AVSessionRadar::GetInstance().FailToStopCast(outDeviceInfo_, info);
522     EXPECT_EQ(info.bizScene_, static_cast<int32_t>(BizScene::CAST_END));
523     EXPECT_EQ(info.bizStage_, static_cast<int32_t>(CastStopStage::STOP_BEGIN));
524     EXPECT_EQ(info.stageRes_, static_cast<int32_t>(StageResult::FAIL));
525     EXPECT_EQ(info.bizState_, static_cast<int32_t>(BizState::END));
526 }