• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022-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 <numeric>
18 #define private public
19 #include "ability_manager_helper.h"
20 #undef private
21 #include "mock_common_event_stub.h"
22 #include "static_subscriber_connection.h"
23 
24 using namespace testing::ext;
25 using namespace OHOS;
26 using namespace OHOS::EventFwk;
27 using namespace OHOS::AppExecFwk;
28 
29 class AbilityManagerHelperTest : public testing::Test {
30 public:
AbilityManagerHelperTest()31     AbilityManagerHelperTest()
32     {}
~AbilityManagerHelperTest()33     ~AbilityManagerHelperTest()
34     {}
35 
36     static void SetUpTestCase(void);
37     static void TearDownTestCase(void);
38     void SetUp();
39     void TearDown();
40 };
41 
SetUpTestCase(void)42 void AbilityManagerHelperTest::SetUpTestCase(void)
43 {}
44 
TearDownTestCase(void)45 void AbilityManagerHelperTest::TearDownTestCase(void)
46 {}
47 
SetUp(void)48 void AbilityManagerHelperTest::SetUp(void)
49 {}
50 
TearDown(void)51 void AbilityManagerHelperTest::TearDown(void)
52 {}
53 
54 using TestAbilityManager = AAFwk::IAbilityManager;
55 
56 class TestAbilityMgr : public TestAbilityManager {
57 public:
58     TestAbilityMgr() = default;
~TestAbilityMgr()59     virtual ~TestAbilityMgr()
60     {};
AsObject()61     sptr<IRemoteObject> AsObject() override
62     {
63         return nullptr;
64     }
65 
StartAbility(const Want & want,int32_t userId,int requestCode)66     int StartAbility(const Want &want, int32_t userId, int requestCode) override
67     {
68         return 1;
69     }
70 
StartAbility(const Want & want,const sptr<IRemoteObject> & callerToken,int32_t userId,int requestCode)71     int StartAbility(
72         const Want &want, const sptr<IRemoteObject> &callerToken, int32_t userId, int requestCode) override
73     {
74         return 1;
75     }
76 
StartAbility(const Want & want,const AbilityStartSetting & abilityStartSetting,const sptr<IRemoteObject> & callerToken,int32_t userId,int requestCode)77     int StartAbility(const Want &want, const AbilityStartSetting &abilityStartSetting,
78         const sptr<IRemoteObject> &callerToken, int32_t userId, int requestCode) override
79     {
80         return 1;
81     }
82 
StartAbility(const Want & want,const StartOptions & startOptions,const sptr<IRemoteObject> & callerToken,int32_t userId,int requestCode)83     int StartAbility(const Want &want, const StartOptions &startOptions,
84         const sptr<IRemoteObject> &callerToken, int32_t userId, int requestCode) override
85     {
86         return 1;
87     }
88 
TerminateAbility(const sptr<IRemoteObject> & token,int resultCode,const Want * resultWant=nullptr)89     int TerminateAbility(
90         const sptr<IRemoteObject> &token, int resultCode, const Want *resultWant = nullptr) override
91     {
92         return 1;
93     }
94 
CloseAbility(const sptr<IRemoteObject> & token,int resultCode=DEFAULT_INVAL_VALUE,const Want * resultWant=nullptr)95     int CloseAbility(const sptr<IRemoteObject> &token, int resultCode = DEFAULT_INVAL_VALUE,
96         const Want *resultWant = nullptr) override
97     {
98         return 1;
99     }
100 
MinimizeAbility(const sptr<IRemoteObject> & token,bool fromUser=false)101     int MinimizeAbility(const sptr<IRemoteObject> &token, bool fromUser = false) override
102     {
103         return 1;
104     }
105 
ConnectAbility(const Want & want,const sptr<IAbilityConnection> & connect,const sptr<IRemoteObject> & callerToken,int32_t userId)106     int ConnectAbility(const Want &want, const sptr<IAbilityConnection> &connect,
107         const sptr<IRemoteObject> &callerToken, int32_t userId) override
108     {
109         return 1;
110     }
111 
DisconnectAbility(const sptr<IAbilityConnection> & connect)112     int DisconnectAbility(const sptr<IAbilityConnection> &connect) override
113     {
114         return 1;
115     }
116 
AcquireDataAbility(const Uri & uri,bool tryBind,const sptr<IRemoteObject> & callerToken)117     sptr<IAbilityScheduler> AcquireDataAbility(
118         const Uri &uri, bool tryBind, const sptr<IRemoteObject> &callerToken) override
119     {
120         return nullptr;
121     }
122 
ReleaseDataAbility(sptr<IAbilityScheduler> dataAbilityScheduler,const sptr<IRemoteObject> & callerToken)123     int ReleaseDataAbility(
124         sptr<IAbilityScheduler> dataAbilityScheduler, const sptr<IRemoteObject> &callerToken) override
125     {
126         return 1;
127     }
128 
AttachAbilityThread(const sptr<IAbilityScheduler> & scheduler,const sptr<IRemoteObject> & token)129     int AttachAbilityThread(const sptr<IAbilityScheduler> &scheduler, const sptr<IRemoteObject> &token) override
130     {
131         return 1;
132     }
133 
AbilityTransitionDone(const sptr<IRemoteObject> & token,int state,const PacMap & saveData)134     int AbilityTransitionDone(const sptr<IRemoteObject> &token, int state, const PacMap &saveData)override
135     {
136         return 1;
137     }
138 
ScheduleConnectAbilityDone(const sptr<IRemoteObject> & token,const sptr<IRemoteObject> & remoteObject)139     int ScheduleConnectAbilityDone(
140         const sptr<IRemoteObject> &token, const sptr<IRemoteObject> &remoteObject) override
141     {
142         return 1;
143     }
144 
ScheduleDisconnectAbilityDone(const sptr<IRemoteObject> & token)145     int ScheduleDisconnectAbilityDone(const sptr<IRemoteObject> &token) override
146     {
147         return 1;
148     }
149 
ScheduleCommandAbilityDone(const sptr<IRemoteObject> & token)150     int ScheduleCommandAbilityDone(const sptr<IRemoteObject> &token) override
151     {
152         return 1;
153     }
154 
ScheduleCommandAbilityWindowDone(const sptr<IRemoteObject> & token,const sptr<AAFwk::SessionInfo> & sessionInfo,AAFwk::WindowCommand winCmd,AAFwk::AbilityCommand abilityCmd)155     int ScheduleCommandAbilityWindowDone(
156         const sptr<IRemoteObject> &token,
157         const sptr<AAFwk::SessionInfo> &sessionInfo,
158         AAFwk::WindowCommand winCmd,
159         AAFwk::AbilityCommand abilityCmd) override
160     {
161         return 1;
162     }
163 
DumpState(const std::string & args,std::vector<std::string> & state)164     void DumpState(const std::string &args, std::vector<std::string> &state) override
165     {}
166 
DumpSysState(const std::string & args,std::vector<std::string> & state,bool isClient,bool isUserID,int UserID)167     void DumpSysState(
168         const std::string& args, std::vector<std::string>& state, bool isClient, bool isUserID, int UserID) override
169     {}
170 
StopServiceAbility(const Want & want,int32_t userId,const sptr<IRemoteObject> & token=nullptr)171     int StopServiceAbility(const Want &want, int32_t userId, const sptr<IRemoteObject> &token = nullptr) override
172     {
173         return 1;
174     }
175 
KillProcess(const std::string & bundleName)176     int KillProcess(const std::string &bundleName) override
177     {
178         return 1;
179     }
180 
ClearUpApplicationData(const std::string & bundleName)181     int ClearUpApplicationData(const std::string &bundleName) override
182     {
183         return 1;
184     }
185 
UninstallApp(const std::string & bundleName,int32_t uid)186     int UninstallApp(const std::string &bundleName, int32_t uid) override
187     {
188         return 1;
189     }
190 
GetWantSender(const WantSenderInfo & wantSenderInfo,const sptr<IRemoteObject> & callerToken)191     sptr<IWantSender> GetWantSender(
192         const WantSenderInfo &wantSenderInfo, const sptr<IRemoteObject> &callerToken) override
193     {
194         return nullptr;
195     }
196 
SendWantSender(const sptr<IWantSender> & target,const SenderInfo & senderInfo)197     int SendWantSender(const sptr<IWantSender> &target, const SenderInfo &senderInfo) override
198     {
199         return 1;
200     }
201 
CancelWantSender(const sptr<IWantSender> & sender)202     void CancelWantSender(const sptr<IWantSender> &sender) override
203     {}
204 
GetPendingWantUid(const sptr<IWantSender> & target)205     int GetPendingWantUid(const sptr<IWantSender> &target) override
206     {
207         return 1;
208     }
209 
GetPendingWantUserId(const sptr<IWantSender> & target)210     int GetPendingWantUserId(const sptr<IWantSender> &target) override
211     {
212         return 1;
213     }
214 
GetPendingWantBundleName(const sptr<IWantSender> & target)215     std::string GetPendingWantBundleName(const sptr<IWantSender> &target) override
216     {
217         return "";
218     }
219 
GetPendingWantCode(const sptr<IWantSender> & target)220     int GetPendingWantCode(const sptr<IWantSender> &target) override
221     {
222         return 1;
223     }
224 
GetPendingWantType(const sptr<IWantSender> & target)225     int GetPendingWantType(const sptr<IWantSender> &target) override
226     {
227         return 1;
228     }
229 
RegisterCancelListener(const sptr<IWantSender> & sender,const sptr<IWantReceiver> & receiver)230     void RegisterCancelListener(const sptr<IWantSender> &sender, const sptr<IWantReceiver> &receiver) override
231     {}
232 
UnregisterCancelListener(const sptr<IWantSender> & sender,const sptr<IWantReceiver> & receiver)233     void UnregisterCancelListener(const sptr<IWantSender> &sender, const sptr<IWantReceiver> &receiver) override
234     {}
235 
GetPendingRequestWant(const sptr<IWantSender> & target,std::shared_ptr<Want> & want)236     int GetPendingRequestWant(const sptr<IWantSender> &target, std::shared_ptr<Want> &want) override
237     {
238         return 1;
239     }
240 
GetWantSenderInfo(const sptr<IWantSender> & target,std::shared_ptr<WantSenderInfo> & info)241     int GetWantSenderInfo(const sptr<IWantSender> &target, std::shared_ptr<WantSenderInfo> &info) override
242     {
243         return 1;
244     }
245 
ContinueMission(const std::string & srcDeviceId,const std::string & dstDeviceId,int32_t missionId,const sptr<IRemoteObject> & callBack,AAFwk::WantParams & wantParams)246     int ContinueMission(const std::string &srcDeviceId, const std::string &dstDeviceId, int32_t missionId,
247         const sptr<IRemoteObject> &callBack, AAFwk::WantParams &wantParams) override
248     {
249         return 1;
250     }
251 
ContinueAbility(const std::string & deviceId,int32_t missionId,uint32_t versionCode)252     int ContinueAbility(const std::string &deviceId, int32_t missionId, uint32_t versionCode) override
253     {
254         return 1;
255     }
256 
StartContinuation(const Want & want,const sptr<IRemoteObject> & abilityToken,int32_t status)257     int StartContinuation(const Want &want, const sptr<IRemoteObject> &abilityToken, int32_t status) override
258     {
259         return 1;
260     }
261 
NotifyCompleteContinuation(const std::string & deviceId,int32_t sessionId,bool isSuccess)262     void NotifyCompleteContinuation(const std::string &deviceId, int32_t sessionId, bool isSuccess) override
263     {}
264 
NotifyContinuationResult(int32_t missionId,int32_t result)265     int NotifyContinuationResult(int32_t missionId, int32_t result) override
266     {
267         return 1;
268     }
269 
LockMissionForCleanup(int32_t missionId)270     int LockMissionForCleanup(int32_t missionId) override
271     {
272         return 1;
273     }
274 
UnlockMissionForCleanup(int32_t missionId)275     int UnlockMissionForCleanup(int32_t missionId) override
276     {
277         return 1;
278     }
279 
RegisterMissionListener(const sptr<IMissionListener> & listener)280     int RegisterMissionListener(const sptr<IMissionListener> &listener) override
281     {
282         return 1;
283     }
284 
UnRegisterMissionListener(const sptr<IMissionListener> & listener)285     int UnRegisterMissionListener(const sptr<IMissionListener> &listener) override
286     {
287         return 1;
288     }
289 
GetMissionInfos(const std::string & deviceId,int32_t numMax,std::vector<MissionInfo> & missionInfos)290     int GetMissionInfos(
291         const std::string &deviceId, int32_t numMax, std::vector<MissionInfo> &missionInfos) override
292     {
293         return 1;
294     }
295 
GetMissionInfo(const std::string & deviceId,int32_t missionId,MissionInfo & missionInfo)296     int GetMissionInfo(const std::string &deviceId, int32_t missionId, MissionInfo &missionInfo) override
297     {
298         return 1;
299     }
300 
GetMissionSnapshot(const std::string & deviceId,int32_t missionId,MissionSnapshot & snapshot,bool isLowResolution)301     int GetMissionSnapshot(const std::string& deviceId, int32_t missionId,
302         MissionSnapshot& snapshot, bool isLowResolution) override
303     {
304         return 1;
305     }
306 
CleanMission(int32_t missionId)307     int CleanMission(int32_t missionId) override
308     {
309         return 1;
310     }
311 
CleanAllMissions()312     int CleanAllMissions() override
313     {
314         return 1;
315     }
316 
MoveMissionToFront(int32_t missionId)317     int MoveMissionToFront(int32_t missionId) override
318     {
319         return 1;
320     }
321 
MoveMissionToFront(int32_t missionId,const StartOptions & startOptions)322     int MoveMissionToFront(int32_t missionId, const StartOptions &startOptions) override
323     {
324         return 1;
325     }
326 
StartAbilityByCall(const Want & want,const sptr<IAbilityConnection> & connect,const sptr<IRemoteObject> & callerToken,int32_t accountId)327     int StartAbilityByCall(const Want &want, const sptr<IAbilityConnection> &connect,
328         const sptr<IRemoteObject> &callerToken, int32_t accountId) override
329     {
330         return 1;
331     }
332 
ReleaseCall(const sptr<IAbilityConnection> & connect,const AppExecFwk::ElementName & element)333     int ReleaseCall(const sptr<IAbilityConnection> &connect, const AppExecFwk::ElementName &element) override
334     {
335         return 1;
336     }
337 
StartUser(int userId)338     int StartUser(int userId) override
339     {
340         return 1;
341     }
342 
StopUser(int userId,const sptr<IStopUserCallback> & callback)343     int StopUser(int userId, const sptr<IStopUserCallback> &callback) override
344     {
345         return 1;
346     }
347 
SetMissionLabel(const sptr<IRemoteObject> & abilityToken,const std::string & label)348     int SetMissionLabel(const sptr<IRemoteObject> &abilityToken, const std::string &label) override
349     {
350         return 1;
351     }
352 
SetMissionIcon(const sptr<IRemoteObject> & token,const std::shared_ptr<OHOS::Media::PixelMap> & icon)353     int SetMissionIcon(const sptr<IRemoteObject> &token,
354         const std::shared_ptr<OHOS::Media::PixelMap> &icon) override
355     {
356         return 1;
357     }
358 
RegisterWindowManagerServiceHandler(const sptr<IWindowManagerServiceHandler> & handler)359     int RegisterWindowManagerServiceHandler(const sptr<IWindowManagerServiceHandler>& handler) override
360     {
361         return 1;
362     }
363 
CompleteFirstFrameDrawing(const sptr<IRemoteObject> & abilityToken)364     void CompleteFirstFrameDrawing(const sptr<IRemoteObject> &abilityToken) override
365     {}
366 
GetAbilityRunningInfos(std::vector<AbilityRunningInfo> & info)367     int GetAbilityRunningInfos(std::vector<AbilityRunningInfo> &info) override
368     {
369         return 1;
370     }
371 
GetExtensionRunningInfos(int upperLimit,std::vector<ExtensionRunningInfo> & info)372     int GetExtensionRunningInfos(int upperLimit, std::vector<ExtensionRunningInfo> &info) override
373     {
374         return 1;
375     }
376 
GetProcessRunningInfos(std::vector<AppExecFwk::RunningProcessInfo> & info)377     int GetProcessRunningInfos(std::vector<AppExecFwk::RunningProcessInfo> &info) override
378     {
379         return 1;
380     }
381 
StartSyncRemoteMissions(const std::string & devId,bool fixConflict,int64_t tag)382     int StartSyncRemoteMissions(const std::string &devId, bool fixConflict, int64_t tag) override
383     {
384         return 1;
385     }
386 
StopSyncRemoteMissions(const std::string & devId)387     int StopSyncRemoteMissions(const std::string &devId) override
388     {
389         return 1;
390     }
391 
RegisterMissionListener(const std::string & deviceId,const sptr<IRemoteMissionListener> & listener)392     int RegisterMissionListener(const std::string &deviceId, const sptr<IRemoteMissionListener> &listener) override
393     {
394         return 1;
395     }
396 
UnRegisterMissionListener(const std::string & deviceId,const sptr<IRemoteMissionListener> & listener)397     int UnRegisterMissionListener(const std::string &deviceId,
398         const sptr<IRemoteMissionListener> &listener) override
399     {
400         return 1;
401     }
402 
SetAbilityController(const sptr<AppExecFwk::IAbilityController> & abilityController,bool imAStabilityTest)403     int SetAbilityController(const sptr<AppExecFwk::IAbilityController> &abilityController,
404         bool imAStabilityTest) override
405     {
406         return 1;
407     }
408 
IsRunningInStabilityTest()409     bool IsRunningInStabilityTest() override
410     {
411         return false;
412     }
413 
RegisterSnapshotHandler(const sptr<ISnapshotHandler> & handler)414     int RegisterSnapshotHandler(const sptr<ISnapshotHandler>& handler) override
415     {
416         return 1;
417     }
418 
StartUserTest(const Want & want,const sptr<IRemoteObject> & observer)419     int StartUserTest(const Want &want, const sptr<IRemoteObject> &observer) override
420     {
421         return 1;
422     }
423 
FinishUserTest(const std::string & msg,const int64_t & resultCode,const std::string & bundleName)424     int FinishUserTest(const std::string &msg, const int64_t &resultCode, const std::string &bundleName) override
425     {
426         return 1;
427     }
428 
GetTopAbility(sptr<IRemoteObject> & token)429     int GetTopAbility(sptr<IRemoteObject> &token) override
430     {
431         return 1;
432     }
433 
DelegatorDoAbilityForeground(const sptr<IRemoteObject> & token)434     int DelegatorDoAbilityForeground(const sptr<IRemoteObject> &token) override
435     {
436         return 1;
437     }
438 
DelegatorDoAbilityBackground(const sptr<IRemoteObject> & token)439     int DelegatorDoAbilityBackground(const sptr<IRemoteObject> &token) override
440     {
441         return 1;
442     }
443 
DoAbilityForeground(const sptr<IRemoteObject> & token,uint32_t flag)444     int DoAbilityForeground(const sptr<IRemoteObject> &token, uint32_t flag) override
445     {
446         return 1;
447     }
448 
DoAbilityBackground(const sptr<IRemoteObject> & token,uint32_t flag)449     int DoAbilityBackground(const sptr<IRemoteObject> &token, uint32_t flag) override
450     {
451         return 1;
452     }
453 
SendANRProcessID(int pid)454     int SendANRProcessID(int pid) override
455     {
456         return 1;
457     }
458 
GetMissionIdByToken(const sptr<IRemoteObject> & token)459     int32_t GetMissionIdByToken(const sptr<IRemoteObject> &token) override
460     {
461         return 1;
462     }
463 
GetAbilityTokenByCalleeObj(const sptr<IRemoteObject> & callStub,sptr<IRemoteObject> & token)464     void GetAbilityTokenByCalleeObj(const sptr<IRemoteObject> &callStub, sptr<IRemoteObject> &token) override
465     {}
466 
IsValidMissionIds(const std::vector<int32_t> & missionIds,std::vector<MissionVaildResult> & results)467     int32_t IsValidMissionIds(
468         const std::vector<int32_t> &missionIds, std::vector<MissionVaildResult> &results) override
469     {
470         return 1;
471     }
472 
ReportDrawnCompleted(const sptr<IRemoteObject> & callerToken)473     int32_t ReportDrawnCompleted(const sptr<IRemoteObject> &callerToken) override
474     {
475         return 1;
476     }
477 };
478 
479 /**
480  * @tc.name: AbilityManagerHelper_0100
481  * @tc.desc: test GetAbilityMgrProxy function and abilityMgr_ is not nullptr.
482  * @tc.type: FUNC
483  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0100,Level1)484 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0100, Level1)
485 {
486     GTEST_LOG_(INFO) << "AbilityManagerHelper_0100 start";
487     AbilityManagerHelper abilityManagerHelper;
488     abilityManagerHelper.abilityMgr_ = new (std::nothrow) TestAbilityMgr();
489     EXPECT_EQ(true, abilityManagerHelper.GetAbilityMgrProxy());
490     GTEST_LOG_(INFO) << "AbilityManagerHelper_0100 end";
491 }
492 
493 /**
494  * @tc.name: AbilityManagerHelper_0200
495  * @tc.desc: test GetAbilityMgrProxy function and abilityMgr_ is nullptr.
496  * @tc.type: FUNC
497  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0200,Level1)498 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0200, Level1)
499 {
500     GTEST_LOG_(INFO) << "AbilityManagerHelper_0200 start";
501     AbilityManagerHelper abilityManagerHelper;
502     abilityManagerHelper.abilityMgr_ = nullptr;
503     EXPECT_EQ(false, abilityManagerHelper.GetAbilityMgrProxy());
504     GTEST_LOG_(INFO) << "AbilityManagerHelper_0200 end";
505 }
506 
507 /**
508  * @tc.name: AbilityManagerHelper_0300
509  * @tc.desc: test ConnectAbility function and GetAbilityMgrProxy is false.
510  * @tc.type: FUNC
511  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0300,Level1)512 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0300, Level1)
513 {
514     GTEST_LOG_(INFO) << "AbilityManagerHelper_0300 start";
515     AbilityManagerHelper abilityManagerHelper;
516     abilityManagerHelper.abilityMgr_ = nullptr;
517     Want want;
518     CommonEventData event;
519     sptr<IRemoteObject> callerToken = nullptr;
520     int32_t userId = 1;
521     EXPECT_EQ(-1, abilityManagerHelper.ConnectAbility(want, event, callerToken, userId));
522     GTEST_LOG_(INFO) << "AbilityManagerHelper_0300 end";
523 }
524 
525 /**
526  * @tc.name: AbilityManagerHelper_0400
527  * @tc.desc: test Clear function and abilityMgr_ is nullptr.
528  * @tc.type: FUNC
529  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0400,Level1)530 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0400, Level1)
531 {
532     GTEST_LOG_(INFO) << "AbilityManagerHelper_0400 start";
533     std::shared_ptr<AbilityManagerHelper> abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
534     ASSERT_NE(nullptr, abilityManagerHelper);
535     abilityManagerHelper->abilityMgr_ = nullptr;
536     abilityManagerHelper->Clear();
537     GTEST_LOG_(INFO) << "AbilityManagerHelper_0400 end";
538 }
539 
540 /**
541  * @tc.name: AbilityManagerHelper_0500
542  * @tc.desc: test Clear function and abilityMgr_ is not nullptr.
543  * @tc.type: FUNC
544  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0500,Level1)545 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0500, Level1)
546 {
547     GTEST_LOG_(INFO) << "AbilityManagerHelper_0500 start";
548     std::shared_ptr<AbilityManagerHelper> abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
549     ASSERT_NE(nullptr, abilityManagerHelper);
550     sptr<IRemoteObject> remoteObject = sptr<IRemoteObject>(new MockCommonEventStub());
551     abilityManagerHelper->abilityMgr_ = iface_cast<AAFwk::IAbilityManager>(remoteObject);
552     abilityManagerHelper->Clear();
553     GTEST_LOG_(INFO) << "AbilityManagerHelper_0500 end";
554 }
555 
556 /**
557  * @tc.name  : test SetEventHandler
558  * @tc.number: AbilityManagerHelper_0600
559  * @tc.desc  : Test SetEventHandler succeeded.
560  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0600,Level1)561 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0600, Level1)
562 {
563     GTEST_LOG_(INFO) << "AbilityManagerHelper_0600 start";
564     auto abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
565     CommonEventData data;
566     sptr<StaticSubscriberConnection> connection = new (std::nothrow) StaticSubscriberConnection(data);
567     abilityManagerHelper->subscriberConnection_.emplace(connection);
568     auto handler = std::make_shared<EventHandler>(EventRunner::Create());
569     abilityManagerHelper->SetEventHandler(handler);
570     EXPECT_NE(abilityManagerHelper->subscriberConnection_.size(), 0);
571     GTEST_LOG_(INFO) << "AbilityManagerHelper_0600 end";
572 }
573 
574 /**
575  * @tc.name  : test DisconnectAbility
576  * @tc.number: AbilityManagerHelper_0700
577  * @tc.desc  : Test the DisconnectAbility function when the connection is nullptr.
578  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0700,Level1)579 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0700, Level1)
580 {
581     GTEST_LOG_(INFO) << "AbilityManagerHelper_0700 start";
582     auto abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
583     CommonEventData data;
584     sptr<StaticSubscriberConnection> connection = new (std::nothrow) StaticSubscriberConnection(data);
585     abilityManagerHelper->subscriberConnection_.emplace(connection);
586     abilityManagerHelper->DisconnectAbility(nullptr);
587     EXPECT_NE(abilityManagerHelper->subscriberConnection_.size(), 0);
588     GTEST_LOG_(INFO) << "AbilityManagerHelper_0700 end";
589 }
590 
591 /**
592  * @tc.name  : test DisconnectAbility
593  * @tc.number: AbilityManagerHelper_0800
594  * @tc.desc  : Test the DisconnectAbility function when the connection is not nullptr.
595  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0800,Level1)596 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0800, Level1)
597 {
598     GTEST_LOG_(INFO) << "AbilityManagerHelper_0800 start";
599     auto abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
600     CommonEventData data;
601     sptr<StaticSubscriberConnection> connection = new (std::nothrow) StaticSubscriberConnection(data);
602     abilityManagerHelper->subscriberConnection_.emplace(connection);
603     abilityManagerHelper->DisconnectAbility(connection);
604     EXPECT_NE(abilityManagerHelper->subscriberConnection_.size(), 0);
605     GTEST_LOG_(INFO) << "AbilityManagerHelper_0800 end";
606 }
607 
608 /**
609  * @tc.name  : test DisconnectServiceAbilityDelay
610  * @tc.number: AbilityManagerHelper_0900
611  * @tc.desc  : Test the DisconnectServiceAbilityDelay function when the connection is nullptr.
612  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_0900,Level1)613 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_0900, Level1)
614 {
615     GTEST_LOG_(INFO) << "AbilityManagerHelper_0900 start";
616     auto abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
617     auto handler = std::make_shared<EventHandler>(EventRunner::Create());
618     abilityManagerHelper->SetEventHandler(handler);
619     CommonEventData data;
620     sptr<StaticSubscriberConnection> connection = new (std::nothrow) StaticSubscriberConnection(data);
621     abilityManagerHelper->subscriberConnection_.emplace(connection);
622     abilityManagerHelper->DisconnectServiceAbilityDelay(nullptr);
623     EXPECT_NE(abilityManagerHelper->subscriberConnection_.size(), 0);
624     GTEST_LOG_(INFO) << "AbilityManagerHelper_0900 end";
625 }
626 
627 /**
628  * @tc.name  : test DisconnectServiceAbilityDelay
629  * @tc.number: AbilityManagerHelper_1000
630  * @tc.desc  : Test the DisconnectServiceAbilityDelay function when the eventHandler_ is nullptr.
631  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_1000,Level1)632 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_1000, Level1)
633 {
634     GTEST_LOG_(INFO) << "AbilityManagerHelper_1000 start";
635     auto abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
636     CommonEventData data;
637     sptr<StaticSubscriberConnection> connection = new (std::nothrow) StaticSubscriberConnection(data);
638     abilityManagerHelper->subscriberConnection_.emplace(connection);
639     abilityManagerHelper->DisconnectServiceAbilityDelay(connection);
640     EXPECT_NE(abilityManagerHelper->subscriberConnection_.size(), 0);
641     GTEST_LOG_(INFO) << "AbilityManagerHelper_1000 end";
642 }
643 
644 /**
645  * @tc.name  : test DisconnectServiceAbilityDelay
646  * @tc.number: AbilityManagerHelper_1100
647  * @tc.desc  : Test the DisconnectServiceAbilityDelay function when the input parameters meet the requirements.
648  */
HWTEST_F(AbilityManagerHelperTest,AbilityManagerHelper_1100,Level1)649 HWTEST_F(AbilityManagerHelperTest, AbilityManagerHelper_1100, Level1)
650 {
651     GTEST_LOG_(INFO) << "AbilityManagerHelper_1100 start";
652     auto abilityManagerHelper = std::make_shared<AbilityManagerHelper>();
653     CommonEventData data;
654     sptr<StaticSubscriberConnection> firstConnection = new (std::nothrow) StaticSubscriberConnection(data);
655     abilityManagerHelper->subscriberConnection_.emplace(firstConnection);
656     auto handler = std::make_shared<EventHandler>(EventRunner::Create());
657     abilityManagerHelper->SetEventHandler(handler);
658     sptr<StaticSubscriberConnection> SecondConnection = new (std::nothrow) StaticSubscriberConnection(data);
659     abilityManagerHelper->DisconnectServiceAbilityDelay(SecondConnection);
660     EXPECT_NE(abilityManagerHelper->subscriberConnection_.size(), 0);
661     GTEST_LOG_(INFO) << "AbilityManagerHelper_1100 end";
662 }