• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2025 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 "audio_haptic_vibrator_impl_unit_test.h"
17 
18 namespace OHOS {
19 namespace Media {
20 using namespace testing::ext;
21 
22 const int32_t NUM123 = 123;
23 const int32_t NUM5 = 5;
24 const int32_t MSERR_OK = 0;
25 const int ERROR = -1;
26 
SetUpTestCase(void)27 void AudioHapticVibratorImplUnitTest::SetUpTestCase(void) {}
TearDownTestCase(void)28 void AudioHapticVibratorImplUnitTest::TearDownTestCase(void) {}
SetUp(void)29 void AudioHapticVibratorImplUnitTest::SetUp(void) {}
TearDown(void)30 void AudioHapticVibratorImplUnitTest::TearDown(void) {}
31 
32 /**
33  * @tc.name  : Test AudioHapticVibratorImpl API
34  * @tc.number: AudioHapticVibratorImpl_001
35  * @tc.desc  : Test AudioHapticVibratorImpl::AudioHapticVibratorImpl()
36  */
37 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_001, TestSize.Level1)
38 {
39     AudioHapticPlayerImpl audioHapticPlayerImpl;
40     audioHapticPlayerImpl.muteHaptic_ = true;
41 
42     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
43     EXPECT_NE(audioHapticVibratorImpl, nullptr);
44 
45     EXPECT_EQ(audioHapticVibratorImpl->audioHapticPlayer_.IsMuted(AUDIO_HAPTIC_TYPE_HAPTIC), true);
46 }
47 
48 /**
49  * @tc.name  : Test AudioHapticVibratorImpl API
50  * @tc.number: AudioHapticVibratorImpl_002
51  * @tc.desc  : Test AudioHapticVibratorImpl::AudioHapticVibratorImpl()
52  */
53 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_002, TestSize.Level1)
54 {
55     AudioHapticPlayerImpl audioHapticPlayerImpl;
56     audioHapticPlayerImpl.muteHaptic_ = false;
57 
58     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
59     EXPECT_NE(audioHapticVibratorImpl, nullptr);
60 
61     EXPECT_EQ(audioHapticVibratorImpl->audioHapticPlayer_.IsMuted(AUDIO_HAPTIC_TYPE_HAPTIC), false);
62 }
63 
64 /**
65  * @tc.name  : Test AudioHapticVibratorImpl API
66  * @tc.number: AudioHapticVibratorImpl_003
67  * @tc.desc  : Test AudioHapticVibratorImpl::ExtractFd()
68  */
69 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_003, TestSize.Level1)
70 {
71     AudioHapticPlayerImpl audioHapticPlayerImpl;
72     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
73     EXPECT_NE(audioHapticVibratorImpl, nullptr);
74 
75     std::string hapticsUri = "1";
76 
77     auto ret = audioHapticVibratorImpl->ExtractFd(hapticsUri);
78     EXPECT_EQ(ret, ERROR);
79 }
80 
81 /**
82  * @tc.name  : Test AudioHapticVibratorImpl API
83  * @tc.number: AudioHapticVibratorImpl_004
84  * @tc.desc  : Test AudioHapticVibratorImpl::ExtractFd()
85  */
86 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_004, TestSize.Level1)
87 {
88     AudioHapticPlayerImpl audioHapticPlayerImpl;
89     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
90     EXPECT_NE(audioHapticVibratorImpl, nullptr);
91 
92     std::string hapticsUri = "1fd://";
93 
94     auto ret = audioHapticVibratorImpl->ExtractFd(hapticsUri);
95     EXPECT_EQ(ret, ERROR);
96 }
97 
98 /**
99  * @tc.name  : Test AudioHapticVibratorImpl API
100  * @tc.number: AudioHapticVibratorImpl_005
101  * @tc.desc  : Test AudioHapticVibratorImpl::ExtractFd()
102  */
103 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_005, TestSize.Level1)
104 {
105     AudioHapticPlayerImpl audioHapticPlayerImpl;
106     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
107     EXPECT_NE(audioHapticVibratorImpl, nullptr);
108 
109     std::string hapticsUri = "fd://abc";
110 
111     auto ret = audioHapticVibratorImpl->ExtractFd(hapticsUri);
112     EXPECT_EQ(ret, ERROR);
113 }
114 
115 /**
116  * @tc.name  : Test AudioHapticVibratorImpl API
117  * @tc.number: AudioHapticVibratorImpl_006
118  * @tc.desc  : Test AudioHapticVibratorImpl::ExtractFd()
119  */
120 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_006, TestSize.Level1)
121 {
122     AudioHapticPlayerImpl audioHapticPlayerImpl;
123     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
124     EXPECT_NE(audioHapticVibratorImpl, nullptr);
125 
126     std::string hapticsUri = "fd://0";
127 
128     auto ret = audioHapticVibratorImpl->ExtractFd(hapticsUri);
129     EXPECT_EQ(ret, ERROR);
130 }
131 
132 /**
133  * @tc.name  : Test AudioHapticVibratorImpl API
134  * @tc.number: AudioHapticVibratorImpl_007
135  * @tc.desc  : Test AudioHapticVibratorImpl::ExtractFd()
136  */
137 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_007, TestSize.Level1)
138 {
139     AudioHapticPlayerImpl audioHapticPlayerImpl;
140     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
141     EXPECT_NE(audioHapticVibratorImpl, nullptr);
142 
143     std::string hapticsUri = "fd://123";
144 
145     auto ret = audioHapticVibratorImpl->ExtractFd(hapticsUri);
146     EXPECT_EQ(ret, NUM123);
147 }
148 
149 /**
150  * @tc.name  : Test AudioHapticVibratorImpl API
151  * @tc.number: AudioHapticVibratorImpl_008
152  * @tc.desc  : Test AudioHapticVibratorImpl::OpenHapticFile()
153  */
154 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_008, TestSize.Level1)
155 {
156     AudioHapticPlayerImpl audioHapticPlayerImpl;
157     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
158     EXPECT_NE(audioHapticVibratorImpl, nullptr);
159 
160     std::string hapticsUri = "fd://123";
161 
162     auto ret = audioHapticVibratorImpl->OpenHapticFile(hapticsUri);
163     EXPECT_NE(ret, MSERR_OK);
164 }
165 
166 /**
167  * @tc.name  : Test AudioHapticVibratorImpl API
168  * @tc.number: AudioHapticVibratorImpl_009
169  * @tc.desc  : Test AudioHapticVibratorImpl::PreLoad()
170  */
171 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_009, TestSize.Level1)
172 {
173     AudioHapticPlayerImpl audioHapticPlayerImpl;
174     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
175     EXPECT_NE(audioHapticVibratorImpl, nullptr);
176 
177     HapticSource hapticSource;
178     AudioStandard::StreamUsage streamUsage = AudioStandard::StreamUsage::STREAM_USAGE_MUSIC;
179     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_NONE;
180     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
181     EXPECT_EQ(audioHapticVibratorImpl->audioHapticPlayer_.GetHapticsMode(), HapticsMode::HAPTICS_MODE_NONE);
182 
183     auto ret = audioHapticVibratorImpl->PreLoad(hapticSource, streamUsage);
184     EXPECT_EQ(ret, MSERR_OK);
185 }
186 
187 /**
188  * @tc.name  : Test AudioHapticVibratorImpl API
189  * @tc.number: AudioHapticVibratorImpl_010
190  * @tc.desc  : Test AudioHapticVibratorImpl::PreLoad()
191  */
192 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_010, TestSize.Level1)
193 {
194     AudioHapticPlayerImpl audioHapticPlayerImpl;
195     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
196     EXPECT_NE(audioHapticVibratorImpl, nullptr);
197 
198     HapticSource hapticSource;
199     AudioStandard::StreamUsage streamUsage = AudioStandard::StreamUsage::STREAM_USAGE_MUSIC;
200     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_SYNC;
201     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
202     EXPECT_EQ(audioHapticVibratorImpl->audioHapticPlayer_.GetHapticsMode(), HapticsMode::HAPTICS_MODE_SYNC);
203 
204     auto ret = audioHapticVibratorImpl->PreLoad(hapticSource, streamUsage);
205     EXPECT_NE(ret, MSERR_OK);
206 }
207 
208 /**
209  * @tc.name  : Test AudioHapticVibratorImpl API
210  * @tc.number: AudioHapticVibratorImpl_011
211  * @tc.desc  : Test AudioHapticVibratorImpl::PreLoad()
212  */
213 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_011, TestSize.Level1)
214 {
215     AudioHapticPlayerImpl audioHapticPlayerImpl;
216     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
217     EXPECT_NE(audioHapticVibratorImpl, nullptr);
218 
219     HapticSource hapticSource;
220     hapticSource.hapticUri = "123";
221     AudioStandard::StreamUsage streamUsage = static_cast<AudioStandard::StreamUsage>(NUM123);
222     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_SYNC;
223     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
224     EXPECT_EQ(audioHapticVibratorImpl->audioHapticPlayer_.GetHapticsMode(), HapticsMode::HAPTICS_MODE_SYNC);
225 
226     auto ret = audioHapticVibratorImpl->PreLoad(hapticSource, streamUsage);
227     EXPECT_NE(ret, MSERR_OK);
228 }
229 
230 /**
231  * @tc.name  : Test AudioHapticVibratorImpl API
232  * @tc.number: AudioHapticVibratorImpl_012
233  * @tc.desc  : Test AudioHapticVibratorImpl::Release()
234  */
235 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_012, TestSize.Level1)
236 {
237     AudioHapticPlayerImpl audioHapticPlayerImpl;
238     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
239     EXPECT_NE(audioHapticVibratorImpl, nullptr);
240 
241     audioHapticVibratorImpl->vibratorPkg_ = std::make_shared<VibratorPackage>();
242     EXPECT_NE(audioHapticVibratorImpl->vibratorPkg_, nullptr);
243 
244     auto ret = audioHapticVibratorImpl->Release();
245     EXPECT_EQ(ret, MSERR_OK);
246 }
247 
248 /**
249  * @tc.name  : Test AudioHapticVibratorImpl API
250  * @tc.number: AudioHapticVibratorImpl_013
251  * @tc.desc  : Test AudioHapticVibratorImpl::Release()
252  */
253 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_013, TestSize.Level1)
254 {
255     AudioHapticPlayerImpl audioHapticPlayerImpl;
256     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
257     EXPECT_NE(audioHapticVibratorImpl, nullptr);
258 
259     audioHapticVibratorImpl->vibratorPkg_ = nullptr;
260     auto ret = audioHapticVibratorImpl->Release();
261     EXPECT_EQ(ret, MSERR_OK);
262 }
263 
264 /**
265  * @tc.name  : Test AudioHapticVibratorImpl API
266  * @tc.number: AudioHapticVibratorImpl_014
267  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrate()
268  */
269 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_014, TestSize.Level1)
270 {
271     AudioHapticPlayerImpl audioHapticPlayerImpl;
272     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
273     EXPECT_NE(audioHapticVibratorImpl, nullptr);
274 
275     AudioLatencyMode latencyMode = AUDIO_LATENCY_MODE_NORMAL;
276     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_NONE;
277     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
278     auto ret = audioHapticVibratorImpl->StartVibrate(latencyMode);
279     EXPECT_EQ(ret, MSERR_OK);
280 }
281 
282 /**
283  * @tc.name  : Test AudioHapticVibratorImpl API
284  * @tc.number: AudioHapticVibratorImpl_015
285  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrate()
286  */
287 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_015, TestSize.Level1)
288 {
289     AudioHapticPlayerImpl audioHapticPlayerImpl;
290     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
291     EXPECT_NE(audioHapticVibratorImpl, nullptr);
292 
293     AudioLatencyMode latencyMode = AUDIO_LATENCY_MODE_NORMAL;
294     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_NON_SYNC;
295     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
296     auto ret = audioHapticVibratorImpl->StartVibrate(latencyMode);
297     EXPECT_NE(ret, MSERR_OK);
298 }
299 
300 
301 /**
302  * @tc.name  : Test AudioHapticVibratorImpl API
303  * @tc.number: AudioHapticVibratorImpl_016
304  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrate()
305  */
306 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_016, TestSize.Level1)
307 {
308     AudioHapticPlayerImpl audioHapticPlayerImpl;
309     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
310     EXPECT_NE(audioHapticVibratorImpl, nullptr);
311 
312     AudioLatencyMode latencyMode = AUDIO_LATENCY_MODE_NORMAL;
313     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_SYNC;
314     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
315     auto ret = audioHapticVibratorImpl->StartVibrate(latencyMode);
316     EXPECT_NE(ret, MSERR_OK);
317 }
318 
319 /**
320  * @tc.name  : Test AudioHapticVibratorImpl API
321  * @tc.number: AudioHapticVibratorImpl_017
322  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrate()
323  */
324 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_017, TestSize.Level1)
325 {
326     AudioHapticPlayerImpl audioHapticPlayerImpl;
327     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
328     EXPECT_NE(audioHapticVibratorImpl, nullptr);
329 
330     AudioLatencyMode latencyMode = AUDIO_LATENCY_MODE_FAST;
331     audioHapticVibratorImpl->isSupportEffectId_ = true;
332     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_SYNC;
333     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
334     auto ret = audioHapticVibratorImpl->StartVibrate(latencyMode);
335     EXPECT_NE(ret, MSERR_OK);
336 }
337 
338 /**
339  * @tc.name  : Test AudioHapticVibratorImpl API
340  * @tc.number: AudioHapticVibratorImpl_018
341  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrate()
342  */
343 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_018, TestSize.Level1)
344 {
345     AudioHapticPlayerImpl audioHapticPlayerImpl;
346     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
347     EXPECT_NE(audioHapticVibratorImpl, nullptr);
348 
349     AudioLatencyMode latencyMode = AUDIO_LATENCY_MODE_FAST;
350     audioHapticVibratorImpl->isSupportEffectId_ = false;
351     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_SYNC;
352     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
353     auto ret = audioHapticVibratorImpl->StartVibrate(latencyMode);
354     EXPECT_NE(ret, MSERR_OK);
355 }
356 
357 /**
358  * @tc.name  : Test AudioHapticVibratorImpl API
359  * @tc.number: AudioHapticVibratorImpl_019
360  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrate()
361  */
362 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_019, TestSize.Level1)
363 {
364     AudioHapticPlayerImpl audioHapticPlayerImpl;
365     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
366     EXPECT_NE(audioHapticVibratorImpl, nullptr);
367 
368     AudioLatencyMode latencyMode = static_cast<AudioLatencyMode>(NUM5);
369     HapticsMode hapticsMode = HapticsMode::HAPTICS_MODE_SYNC;
370     audioHapticVibratorImpl->audioHapticPlayer_.SetHapticsMode(hapticsMode);
371     auto ret = audioHapticVibratorImpl->StartVibrate(latencyMode);
372     EXPECT_NE(ret, MSERR_OK);
373 }
374 
375 /**
376  * @tc.name  : Test AudioHapticVibratorImpl API
377  * @tc.number: AudioHapticVibratorImpl_020
378  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateWithEffect()
379  */
380 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_20, TestSize.Level1)
381 {
382     AudioHapticPlayerImpl audioHapticPlayerImpl;
383     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
384     EXPECT_NE(audioHapticVibratorImpl, nullptr);
385 
386     auto ret = audioHapticVibratorImpl->StartVibrateWithEffect();
387     EXPECT_NE(ret, MSERR_OK);
388 }
389 
390 /**
391  * @tc.name  : Test AudioHapticVibratorImpl API
392  * @tc.number: AudioHapticVibratorImpl_021
393  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForSoundPool()
394  */
395 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_21, TestSize.Level1)
396 {
397     AudioHapticPlayerImpl audioHapticPlayerImpl;
398     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
399     EXPECT_NE(audioHapticVibratorImpl, nullptr);
400 
401     audioHapticVibratorImpl->isStopped_ = true;
402     auto ret = audioHapticVibratorImpl->StartVibrateForSoundPool();
403     EXPECT_EQ(ret, MSERR_OK);
404 }
405 
406 /**
407  * @tc.name  : Test AudioHapticVibratorImpl API
408  * @tc.number: AudioHapticVibratorImpl_022
409  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForSoundPool()
410  */
411 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_22, TestSize.Level1)
412 {
413     AudioHapticPlayerImpl audioHapticPlayerImpl;
414     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
415     EXPECT_NE(audioHapticVibratorImpl, nullptr);
416 
417     audioHapticVibratorImpl->isStopped_ = false;
418 
419     audioHapticVibratorImpl->vibratorPkg_ = std::make_shared<VibratorPackage>();
420     EXPECT_NE(audioHapticVibratorImpl->vibratorPkg_, nullptr);
421 
422     audioHapticVibratorImpl->vibratorFD_ = std::make_shared<VibratorFileDescription>();
423     EXPECT_NE(audioHapticVibratorImpl->vibratorFD_, nullptr);
424 
425     auto ret = audioHapticVibratorImpl->StartVibrateForSoundPool();
426     EXPECT_EQ(ret, MSERR_OK);
427 }
428 
429 /**
430  * @tc.name  : Test AudioHapticVibratorImpl API
431  * @tc.number: AudioHapticVibratorImpl_023
432  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForSoundPool()
433  */
434 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_23, TestSize.Level1)
435 {
436     AudioHapticPlayerImpl audioHapticPlayerImpl;
437     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
438     EXPECT_NE(audioHapticVibratorImpl, nullptr);
439 
440     audioHapticVibratorImpl->isStopped_ = false;
441 
442     audioHapticVibratorImpl->vibratorPkg_ = std::make_shared<VibratorPackage>();
443     EXPECT_NE(audioHapticVibratorImpl->vibratorPkg_, nullptr);
444 
445     audioHapticVibratorImpl->vibratorFD_ = nullptr;
446 
447     auto ret = audioHapticVibratorImpl->StartVibrateForSoundPool();
448     EXPECT_NE(ret, MSERR_OK);
449 }
450 
451 /**
452  * @tc.name  : Test AudioHapticVibratorImpl API
453  * @tc.number: AudioHapticVibratorImpl_024
454  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForSoundPool()
455  */
456 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_24, TestSize.Level1)
457 {
458     AudioHapticPlayerImpl audioHapticPlayerImpl;
459     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
460     EXPECT_NE(audioHapticVibratorImpl, nullptr);
461 
462     audioHapticVibratorImpl->isStopped_ = false;
463 
464     audioHapticVibratorImpl->vibratorPkg_ = nullptr;
465     audioHapticVibratorImpl->vibratorFD_ = nullptr;
466 
467     auto ret = audioHapticVibratorImpl->StartVibrateForSoundPool();
468     EXPECT_NE(ret, MSERR_OK);
469 }
470 
471 /**
472  * @tc.name  : Test AudioHapticVibratorImpl API
473  * @tc.number: AudioHapticVibratorImpl_025
474  * @tc.desc  : Test AudioHapticVibratorImpl::StartNonSyncVibration()
475  */
476 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_25, TestSize.Level1)
477 {
478     AudioHapticPlayerImpl audioHapticPlayerImpl;
479     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
480     EXPECT_NE(audioHapticVibratorImpl, nullptr);
481 
482     audioHapticVibratorImpl->isStopped_ = true;
483 
484     auto ret = audioHapticVibratorImpl->StartNonSyncVibration();
485     EXPECT_EQ(ret, MSERR_OK);
486 }
487 
488 /**
489  * @tc.name  : Test AudioHapticVibratorImpl API
490  * @tc.number: AudioHapticVibratorImpl_027
491  * @tc.desc  : Test AudioHapticVibratorImpl::StartNonSyncVibration()
492  */
493 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_27, TestSize.Level1)
494 {
495     AudioHapticPlayerImpl audioHapticPlayerImpl;
496     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
497     EXPECT_NE(audioHapticVibratorImpl, nullptr);
498 
499     audioHapticVibratorImpl->isStopped_ = false;
500 
501     audioHapticVibratorImpl->vibratorPkg_ = std::make_shared<VibratorPackage>();
502     EXPECT_NE(audioHapticVibratorImpl->vibratorPkg_, nullptr);
503 
504     audioHapticVibratorImpl->vibratorFD_ = nullptr;
505 
506     auto ret = audioHapticVibratorImpl->StartNonSyncVibration();
507     EXPECT_NE(ret, MSERR_OK);
508 }
509 
510 /**
511  * @tc.name  : Test AudioHapticVibratorImpl API
512  * @tc.number: AudioHapticVibratorImpl_028
513  * @tc.desc  : Test AudioHapticVibratorImpl::StartNonSyncVibration()
514  */
515 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_28, TestSize.Level1)
516 {
517     AudioHapticPlayerImpl audioHapticPlayerImpl;
518     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
519     EXPECT_NE(audioHapticVibratorImpl, nullptr);
520 
521     audioHapticVibratorImpl->isStopped_ = false;
522 
523     audioHapticVibratorImpl->vibratorPkg_ = nullptr;
524     audioHapticVibratorImpl->vibratorFD_ = nullptr;
525 
526     auto ret = audioHapticVibratorImpl->StartNonSyncVibration();
527     EXPECT_NE(ret, MSERR_OK);
528 }
529 
530 /**
531  * @tc.name  : Test AudioHapticVibratorImpl API
532  * @tc.number: AudioHapticVibratorImpl_029
533  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForAVPlayer()
534  */
535 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_29, TestSize.Level1)
536 {
537     AudioHapticPlayerImpl audioHapticPlayerImpl;
538     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
539     EXPECT_NE(audioHapticVibratorImpl, nullptr);
540 
541     audioHapticVibratorImpl->isStopped_ = true;
542 
543     auto ret = audioHapticVibratorImpl->StartVibrateForAVPlayer();
544     EXPECT_EQ(ret, MSERR_OK);
545 }
546 
547 /**
548  * @tc.name  : Test AudioHapticVibratorImpl API
549  * @tc.number: AudioHapticVibratorImpl_030
550  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForAVPlayer()
551  */
552 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_30, TestSize.Level1)
553 {
554     AudioHapticPlayerImpl audioHapticPlayerImpl;
555     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
556     EXPECT_NE(audioHapticVibratorImpl, nullptr);
557 
558     audioHapticVibratorImpl->isStopped_ = false;
559 
560     audioHapticVibratorImpl->vibratorPkg_ = std::make_shared<VibratorPackage>();
561     EXPECT_NE(audioHapticVibratorImpl->vibratorPkg_, nullptr);
562 
563     audioHapticVibratorImpl->vibratorFD_ = std::make_shared<VibratorFileDescription>();
564     EXPECT_NE(audioHapticVibratorImpl->vibratorFD_, nullptr);
565 
566     auto ret = audioHapticVibratorImpl->StartVibrateForAVPlayer();
567     EXPECT_EQ(ret, MSERR_OK);
568 }
569 
570 /**
571  * @tc.name  : Test AudioHapticVibratorImpl API
572  * @tc.number: AudioHapticVibratorImpl_031
573  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForAVPlayer()
574  */
575 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_31, TestSize.Level1)
576 {
577     AudioHapticPlayerImpl audioHapticPlayerImpl;
578     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
579     EXPECT_NE(audioHapticVibratorImpl, nullptr);
580 
581     audioHapticVibratorImpl->isStopped_ = false;
582 
583     audioHapticVibratorImpl->vibratorPkg_ = std::make_shared<VibratorPackage>();
584     EXPECT_NE(audioHapticVibratorImpl->vibratorPkg_, nullptr);
585 
586     audioHapticVibratorImpl->vibratorFD_ = nullptr;
587 
588     auto ret = audioHapticVibratorImpl->StartVibrateForAVPlayer();
589     EXPECT_NE(ret, MSERR_OK);
590 }
591 
592 /**
593  * @tc.name  : Test AudioHapticVibratorImpl API
594  * @tc.number: AudioHapticVibratorImpl_032
595  * @tc.desc  : Test AudioHapticVibratorImpl::StartVibrateForAVPlayer()
596  */
597 HWTEST_F(AudioHapticVibratorImplUnitTest, AudioHapticVibratorImpl_32, TestSize.Level1)
598 {
599     AudioHapticPlayerImpl audioHapticPlayerImpl;
600     auto audioHapticVibratorImpl = std::make_shared<AudioHapticVibratorImpl>(audioHapticPlayerImpl);
601     EXPECT_NE(audioHapticVibratorImpl, nullptr);
602 
603     audioHapticVibratorImpl->isStopped_ = false;
604 
605     audioHapticVibratorImpl->vibratorPkg_ = nullptr;
606     audioHapticVibratorImpl->vibratorFD_ = nullptr;
607 
608     auto ret = audioHapticVibratorImpl->StartVibrateForAVPlayer();
609     EXPECT_NE(ret, MSERR_OK);
610 }
611 } // namespace Media
612 } // namespace OHOS