• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-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 UNITTEST_OHOS_ABILITY_RUNTIME_ABILITY_MANAGER_STUB_MOCK_H
17 #define UNITTEST_OHOS_ABILITY_RUNTIME_ABILITY_MANAGER_STUB_MOCK_H
18 #include <gmock/gmock.h>
19 #include <iremote_object.h>
20 #include <iremote_stub.h>
21 #include "ability_manager_interface.h"
22 
23 namespace OHOS {
24 namespace AAFwk {
25 class AbilityManagerStubTestMock : public IRemoteStub<IAbilityManager> {
26 public:
27     DECLARE_INTERFACE_DESCRIPTOR(u"IAbilityManagerMock");
28 
AbilityManagerStubTestMock()29     AbilityManagerStubTestMock() : code_(0)
30     {}
~AbilityManagerStubTestMock()31     virtual ~AbilityManagerStubTestMock()
32     {}
33 
34     MOCK_METHOD4(SendRequest, int(uint32_t, MessageParcel&, MessageParcel&, MessageOption&));
35 
InvokeSendRequest(uint32_t code,MessageParcel & data,MessageParcel & reply,MessageOption & option)36     int InvokeSendRequest(uint32_t code, MessageParcel& data, MessageParcel& reply, MessageOption& option)
37     {
38         code_ = code;
39 
40         return 0;
41     }
42 
GetForegroundUIAbilities(std::vector<AppExecFwk::AbilityStateData> & list)43     virtual int32_t GetForegroundUIAbilities(std::vector<AppExecFwk::AbilityStateData> &list)
44     {
45         return 0;
46     }
47 
InvokeErrorSendRequest(uint32_t code,MessageParcel & data,MessageParcel & reply,MessageOption & option)48     int InvokeErrorSendRequest(uint32_t code, MessageParcel& data, MessageParcel& reply, MessageOption& option)
49     {
50         code_ = code;
51         return UNKNOWN_ERROR;
52     }
53 
54     int code_ = 0;
55 
56     virtual int StartAbility(const Want& want, int32_t userId = DEFAULT_INVAL_VALUE, int requestCode = -1)
57     {
58         return 0;
59     }
60 
61     virtual int StartAbility(const Want& want,
62         const AbilityStartSetting& abilityStartSetting,
63         const sptr<IRemoteObject>& callerToken,
64         int32_t userId = DEFAULT_INVAL_VALUE,
65         int requestCode = DEFAULT_INVAL_VALUE)
66     {
67         return 0;
68     }
69 
70     virtual int StartAbility(
71         const Want& want,
72         const StartOptions& startOptions,
73         const sptr<IRemoteObject>& callerToken,
74         int32_t userId = DEFAULT_INVAL_VALUE,
75         int requestCode = DEFAULT_INVAL_VALUE)
76     {
77         return 0;
78     }
79 
80     virtual int StartAbilityAsCaller(
81         const Want& want,
82         const StartOptions& startOptions,
83         const sptr<IRemoteObject>& callerToken,
84         sptr<IRemoteObject> asCallerSourceToken,
85         int32_t userId = DEFAULT_INVAL_VALUE,
86         int requestCode = DEFAULT_INVAL_VALUE)
87     {
88         return 0;
89     }
90 
91     virtual int StartAbilityByUIContentSession(
92         const Want &want,
93         const sptr<IRemoteObject> &callerToken,
94         const sptr<SessionInfo> &sessionInfo,
95         int32_t userId = DEFAULT_INVAL_VALUE,
96         int requestCode = DEFAULT_INVAL_VALUE)
97     {
98         return 0;
99     }
100 
101     virtual int StartAbilityByUIContentSession(
102         const Want &want,
103         const StartOptions &startOptions,
104         const sptr<IRemoteObject> &callerToken,
105         const sptr<SessionInfo> &sessionInfo,
106         int32_t userId = DEFAULT_INVAL_VALUE,
107         int requestCode = DEFAULT_INVAL_VALUE)
108     {
109         return 0;
110     }
111 
RegisterSessionHandler(const sptr<IRemoteObject> & callerToken)112     virtual int RegisterSessionHandler(const sptr<IRemoteObject> &callerToken)
113     {
114         return 0;
115     }
116 
117     virtual int TerminateAbility(const sptr<IRemoteObject>& token, int resultCode, const Want* resultWant = nullptr)
118     {
119         return 0;
120     }
121     int CloseAbility(const sptr<IRemoteObject>& token, int resultCode = DEFAULT_INVAL_VALUE,
122         const Want* resultWant = nullptr) override
123     {
124         return 0;
125     }
MinimizeAbility(const sptr<IRemoteObject> & token,bool fromUser)126     int MinimizeAbility(const sptr<IRemoteObject>& token, bool fromUser) override
127     {
128         return 0;
129     }
130 
131     virtual int ConnectAbility(
132         const Want& want,
133         const sptr<IAbilityConnection>& connect,
134         const sptr<IRemoteObject>& callerToken,
135         int32_t userId = DEFAULT_INVAL_VALUE)
136     {
137         return 0;
138     }
139 
AcquireDataAbility(const Uri & uri,bool tryBind,const sptr<IRemoteObject> & callerToken)140     sptr<IAbilityScheduler> AcquireDataAbility(
141         const Uri& uri, bool tryBind, const sptr<IRemoteObject>& callerToken) override
142     {
143         return nullptr;
144     }
145 
ReleaseDataAbility(sptr<IAbilityScheduler> dataAbilityScheduler,const sptr<IRemoteObject> & callerToken)146     virtual int ReleaseDataAbility(sptr<IAbilityScheduler> dataAbilityScheduler, const sptr<IRemoteObject>& callerToken)
147     {
148         return 0;
149     }
150 
DisconnectAbility(sptr<IAbilityConnection> connect)151     virtual int DisconnectAbility(sptr<IAbilityConnection> connect)
152     {
153         return 0;
154     }
155 
AttachAbilityThread(const sptr<IAbilityScheduler> & scheduler,const sptr<IRemoteObject> & token)156     virtual int AttachAbilityThread(const sptr<IAbilityScheduler>& scheduler, const sptr<IRemoteObject>& token)
157     {
158         return 0;
159     }
160 
AbilityTransitionDone(const sptr<IRemoteObject> & token,int state,const PacMap & saveData)161     virtual int AbilityTransitionDone(const sptr<IRemoteObject>& token, int state, const PacMap& saveData)
162     {
163         return 0;
164     }
165 
ScheduleConnectAbilityDone(const sptr<IRemoteObject> & token,const sptr<IRemoteObject> & remoteObject)166     virtual int ScheduleConnectAbilityDone(const sptr<IRemoteObject>& token, const sptr<IRemoteObject>& remoteObject)
167     {
168         return 0;
169     }
170 
ScheduleDisconnectAbilityDone(const sptr<IRemoteObject> & token)171     virtual int ScheduleDisconnectAbilityDone(const sptr<IRemoteObject>& token)
172     {
173         return 0;
174     }
175 
ScheduleCommandAbilityDone(const sptr<IRemoteObject> & token)176     virtual int ScheduleCommandAbilityDone(const sptr<IRemoteObject>& token)
177     {
178         return 0;
179     }
180 
ScheduleCommandAbilityWindowDone(const sptr<IRemoteObject> & token,const sptr<SessionInfo> & sessionInfo,WindowCommand winCmd,AbilityCommand abilityCmd)181     virtual int ScheduleCommandAbilityWindowDone(
182         const sptr<IRemoteObject> &token,
183         const sptr<SessionInfo> &sessionInfo,
184         WindowCommand winCmd,
185         AbilityCommand abilityCmd)
186     {
187         return 0;
188     }
189 
DumpState(const std::string & args,std::vector<std::string> & state)190     virtual void DumpState(const std::string& args, std::vector<std::string>& state)
191     {}
192 
DumpSysState(const std::string & args,std::vector<std::string> & info,bool isClient,bool isUserID,int UserID)193     virtual void DumpSysState(
194         const std::string& args, std::vector<std::string>& info, bool isClient, bool isUserID, int UserID)
195     {}
196 
197     virtual int StopServiceAbility(const Want& want, int32_t userId = DEFAULT_INVAL_VALUE,
198         const sptr<IRemoteObject> &token = nullptr)
199     {
200         return 0;
201     }
202 
203     virtual int KillProcess(const std::string& bundleName, bool clearPageStack = false, int32_t appIndex = 0)
204     {
205         return 0;
206     }
207 
UninstallApp(const std::string & bundleName,int32_t uid)208     virtual int UninstallApp(const std::string& bundleName, int32_t uid)
209     {
210         return 0;
211     }
212 
GetMissionIdByToken(const sptr<IRemoteObject> & token)213     int32_t GetMissionIdByToken(const sptr<IRemoteObject>& token) override
214     {
215         return 0;
216     }
217 
GetAbilityTokenByCalleeObj(const sptr<IRemoteObject> & callStub,sptr<IRemoteObject> & token)218     void GetAbilityTokenByCalleeObj(const sptr<IRemoteObject> &callStub, sptr<IRemoteObject> &token) override
219     {
220         return;
221     }
222 
StartUser(int userId,sptr<IUserCallback> callback,bool isAppRecovery)223     int StartUser(int userId, sptr<IUserCallback> callback, bool isAppRecovery) override
224     {
225         return 0;
226     }
227 
StopUser(int userId,const sptr<IUserCallback> & callback)228     int StopUser(int userId, const sptr<IUserCallback>& callback) override
229     {
230         return 0;
231     }
232     int LogoutUser(int32_t userId, sptr<IUserCallback> callback = nullptr) override
233     {
234         return 0;
235     }
StartSyncRemoteMissions(const std::string & devId,bool fixConflict,int64_t tag)236     int StartSyncRemoteMissions(const std::string& devId, bool fixConflict, int64_t tag) override
237     {
238         return 0;
239     }
StopSyncRemoteMissions(const std::string & devId)240     int StopSyncRemoteMissions(const std::string& devId) override
241     {
242         return 0;
243     }
RegisterMissionListener(const std::string & deviceId,const sptr<IRemoteMissionListener> & listener)244     int RegisterMissionListener(const std::string& deviceId,
245         const sptr<IRemoteMissionListener>& listener) override
246     {
247         return 0;
248     }
UnRegisterMissionListener(const std::string & deviceId,const sptr<IRemoteMissionListener> & listener)249     int UnRegisterMissionListener(const std::string& deviceId,
250         const sptr<IRemoteMissionListener>& listener) override
251     {
252         return 0;
253     }
ReleaseCall(const sptr<IAbilityConnection> & connect,const AppExecFwk::ElementName & element)254     int ReleaseCall(const sptr<IAbilityConnection>& connect,
255         const AppExecFwk::ElementName& element) override
256     {
257         return 0;
258     }
GetMissionSnapshot(const std::string & deviceId,int32_t missionId,MissionSnapshot & snapshot,bool isLowResolution)259     virtual int GetMissionSnapshot(const std::string& deviceId, int32_t missionId,
260         MissionSnapshot& snapshot, bool isLowResolution)
261     {
262         return 0;
263     }
264 
RegisterSnapshotHandler(const sptr<ISnapshotHandler> & handler)265     virtual int RegisterSnapshotHandler(const sptr<ISnapshotHandler>& handler)
266     {
267         return 0;
268     }
269 
270     int RegisterWindowManagerServiceHandler(const sptr<IWindowManagerServiceHandler>& handler,
271         bool animationEnabled = true) override
272     {
273         return 0;
274     }
275 
CompleteFirstFrameDrawing(const sptr<IRemoteObject> & abilityToken)276     void CompleteFirstFrameDrawing(const sptr<IRemoteObject>& abilityToken) override {}
277 
SetAbilityController(const sptr<AppExecFwk::IAbilityController> & abilityController,bool imAStabilityTest)278     int SetAbilityController(const sptr<AppExecFwk::IAbilityController>& abilityController,
279         bool imAStabilityTest) override
280     {
281         return 0;
282     }
283 
IsRunningInStabilityTest()284     bool IsRunningInStabilityTest() override
285     {
286         return true;
287     }
288 
SetMissionIcon(const sptr<IRemoteObject> & token,const std::shared_ptr<OHOS::Media::PixelMap> & icon)289     int SetMissionIcon(const sptr<IRemoteObject>& token,
290         const std::shared_ptr<OHOS::Media::PixelMap>& icon) override
291     {
292         if (!token || !icon) {
293             return -1;
294         }
295 
296         return 0;
297     }
298 
299     MOCK_METHOD4(StartAbility, int(const Want& want, const sptr<IRemoteObject>& callerToken,
300         int32_t userId, int requestCode));
301     MOCK_METHOD4(StartAbilityByInsightIntent, int32_t(const Want& want, const sptr<IRemoteObject>& callerToken,
302         uint64_t intentId, int32_t userId));
303     MOCK_METHOD5(StartAbilityAsCaller, int(const Want& want, const sptr<IRemoteObject>& callerToken,
304         sptr<IRemoteObject> asCallerSourceToken, int32_t userId, int requestCode));
305     MOCK_METHOD3(
306         GetWantSender, sptr<IWantSender>(const WantSenderInfo& wantSenderInfo, const sptr<IRemoteObject>& callerToken,
307         int32_t uid));
308     MOCK_METHOD2(SendWantSender, int(sptr<IWantSender> target, const SenderInfo& senderInfo));
309     MOCK_METHOD1(CancelWantSender, void(const sptr<IWantSender>& sender));
310     MOCK_METHOD1(GetPendingWantUid, int(const sptr<IWantSender>& target));
311     MOCK_METHOD1(GetPendingWantUserId, int(const sptr<IWantSender>& target));
312     MOCK_METHOD1(GetPendingWantBundleName, std::string(const sptr<IWantSender>& target));
313     MOCK_METHOD1(GetPendingWantCode, int(const sptr<IWantSender>& target));
314     MOCK_METHOD1(GetPendingWantType, int(const sptr<IWantSender>& target));
315     MOCK_METHOD2(RegisterCancelListener, void(const sptr<IWantSender>& sender, const sptr<IWantReceiver>& receiver));
316     MOCK_METHOD2(UnregisterCancelListener, void(const sptr<IWantSender>& sender, const sptr<IWantReceiver>& receiver));
317     MOCK_METHOD2(GetPendingRequestWant, int(const sptr<IWantSender>& target, std::shared_ptr<Want>& want));
318     MOCK_METHOD3(StartContinuation, int(const Want& want, const sptr<IRemoteObject>& abilityToken, int32_t status));
319     MOCK_METHOD2(NotifyContinuationResult, int(int32_t missionId, int32_t result));
320     MOCK_METHOD5(ContinueMission, int(const std::string& srcDeviceId, const std::string& dstDeviceId,
321         int32_t missionId, const sptr<IRemoteObject>& callBack, AAFwk::WantParams& wantParams));
322     MOCK_METHOD3(ContinueAbility, int(const std::string& deviceId, int32_t missionId, uint32_t versionCode));
323     MOCK_METHOD3(NotifyCompleteContinuation, void(const std::string& deviceId, int32_t sessionId, bool isSuccess));
324 
325     MOCK_METHOD1(LockMissionForCleanup, int(int32_t missionId));
326     MOCK_METHOD1(UnlockMissionForCleanup, int(int32_t missionId));
327     MOCK_METHOD1(RegisterMissionListener, int(const sptr<IMissionListener>& listener));
328     MOCK_METHOD1(UnRegisterMissionListener, int(const sptr<IMissionListener>& listener));
329     MOCK_METHOD3(
330         GetMissionInfos, int(const std::string& deviceId, int32_t numMax, std::vector<MissionInfo>& missionInfos));
331     MOCK_METHOD3(GetMissionInfo, int(const std::string& deviceId, int32_t missionId, MissionInfo& missionInfo));
332     MOCK_METHOD1(CleanMission, int(int32_t missionId));
333     MOCK_METHOD0(CleanAllMissions, int());
334     MOCK_METHOD1(MoveMissionToFront, int(int32_t missionId));
335     MOCK_METHOD2(MoveMissionToFront, int(int32_t missionId, const StartOptions& startOptions));
336     MOCK_METHOD2(MoveMissionsToForeground, int(const std::vector<int32_t>& missionIds, int32_t topMissionId));
337     MOCK_METHOD2(MoveMissionsToBackground, int(const std::vector<int32_t>& missionIds, std::vector<int32_t>& result));
338     MOCK_METHOD2(SetMissionContinueState, int(const sptr<IRemoteObject>& token, const AAFwk::ContinueState& state));
339     MOCK_METHOD2(SetMissionLabel, int(const sptr<IRemoteObject>& token, const std::string& label));
340     MOCK_METHOD2(GetWantSenderInfo, int(const sptr<IWantSender>& target, std::shared_ptr<WantSenderInfo>& info));
341     MOCK_METHOD1(GetAbilityRunningInfos, int(std::vector<AbilityRunningInfo>& info));
342     MOCK_METHOD2(GetExtensionRunningInfos, int(int upperLimit, std::vector<ExtensionRunningInfo>& info));
343     MOCK_METHOD1(GetProcessRunningInfos, int(std::vector<AppExecFwk::RunningProcessInfo>& info));
344     MOCK_METHOD2(AcquireShareData, int32_t(const int32_t &missionId, const sptr<IAcquireShareDataCallback> &shareData));
345     MOCK_METHOD4(ShareDataDone, int32_t(const sptr<IRemoteObject> &token,
346         const int32_t &resultCode, const int32_t &uniqueId, WantParams &wantParam));
347 
SendResultToAbility(int requestCode,int resultCode,Want & resultWant)348     int SendResultToAbility(int requestCode, int resultCode, Want& resultWant) override
349     {
350         return 0;
351     }
352 
353     int StartAbilityByCall(const Want& want, const sptr<IAbilityConnection>& connect,
354         const sptr<IRemoteObject>& callerToken, int32_t userId = DEFAULT_INVAL_VALUE) override
355     {
356         return 0;
357     }
358 
CallRequestDone(const sptr<IRemoteObject> & token,const sptr<IRemoteObject> & callStub)359     void CallRequestDone(const sptr<IRemoteObject> &token, const sptr<IRemoteObject> &callStub) override
360     {
361         return;
362     }
363 
StartUserTest(const Want & want,const sptr<IRemoteObject> & observer)364     int StartUserTest(const Want &want, const sptr<IRemoteObject> &observer) override
365     {
366         return 0;
367     }
368 
FinishUserTest(const std::string & msg,const int64_t & resultCode,const std::string & bundleName)369     int FinishUserTest(
370         const std::string& msg, const int64_t& resultCode, const std::string& bundleName) override
371     {
372         return 0;
373     }
374 
GetTopAbility(sptr<IRemoteObject> & token)375     int GetTopAbility(sptr<IRemoteObject>& token) override
376     {
377         return 0;
378     }
379 
DelegatorDoAbilityForeground(const sptr<IRemoteObject> & token)380     int DelegatorDoAbilityForeground(const sptr<IRemoteObject>& token) override
381     {
382         return 0;
383     }
384 
DelegatorDoAbilityBackground(const sptr<IRemoteObject> & token)385     int DelegatorDoAbilityBackground(const sptr<IRemoteObject>& token) override
386     {
387         return 0;
388     }
389 
DoAbilityForeground(const sptr<IRemoteObject> & token,uint32_t flag)390     int DoAbilityForeground(const sptr<IRemoteObject>& token, uint32_t flag) override
391     {
392         return 0;
393     }
394 
DoAbilityBackground(const sptr<IRemoteObject> & token,uint32_t flag)395     int DoAbilityBackground(const sptr<IRemoteObject>& token, uint32_t flag) override
396     {
397         return 0;
398     }
399 
ReportDrawnCompleted(const sptr<IRemoteObject> & callerToken)400     int32_t ReportDrawnCompleted(const sptr<IRemoteObject>& callerToken) override
401     {
402         return 0;
403     }
404 
SetApplicationAutoStartupByEDM(const AutoStartupInfo & info,bool flag)405     int32_t SetApplicationAutoStartupByEDM(const AutoStartupInfo &info, bool flag) override
406     {
407         return 0;
408     }
409 
CancelApplicationAutoStartupByEDM(const AutoStartupInfo & info,bool flag)410     int32_t CancelApplicationAutoStartupByEDM(const AutoStartupInfo &info, bool flag) override
411     {
412         return 0;
413     }
414 
415 #ifdef ABILITY_COMMAND_FOR_TEST
ForceTimeoutForTest(const std::string & abilityName,const std::string & state)416     int ForceTimeoutForTest(const std::string& abilityName, const std::string& state) override
417     {
418         return 0;
419     }
420 #endif
421     MOCK_METHOD2(IsValidMissionIds, int32_t(const std::vector<int32_t>&, std::vector<MissionValidResult>&));
422     MOCK_METHOD1(RegisterAppDebugListener, int32_t(sptr<AppExecFwk::IAppDebugListener> listener));
423     MOCK_METHOD1(UnregisterAppDebugListener, int32_t(sptr<AppExecFwk::IAppDebugListener> listener));
424     MOCK_METHOD2(AttachAppDebug, int32_t(const std::string &bundleName, bool isDebugFromLocal));
425     MOCK_METHOD2(DetachAppDebug, int32_t(const std::string &bundleName, bool isDebugFromLocal));
426     MOCK_METHOD3(ExecuteIntent, int32_t(uint64_t key, const sptr<IRemoteObject> &callerToken,
427         const InsightIntentExecuteParam &param));
428     MOCK_METHOD3(ExecuteInsightIntentDone, int32_t(const sptr<IRemoteObject> &token, uint64_t intentId,
429         const InsightIntentExecuteResult &result));
430     MOCK_METHOD5(StartAbilityWithSpecifyTokenId, int(const Want& want, const sptr<IRemoteObject>& callerToken,
431         uint32_t specifyTokenId, int32_t userId, int requestCode));
432 };
433 }  // namespace AAFwk
434 }  // namespace OHOS
435 
436 #endif
437