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 #ifndef OHOS_ABILITY_RUNTIME_MOCK_ABILITY_MANAGER_STUB_H 17 #define OHOS_ABILITY_RUNTIME_MOCK_ABILITY_MANAGER_STUB_H 18 19 #include "gmock/gmock.h" 20 21 #include "string_ex.h" 22 #include "ability_manager_errors.h" 23 #include "ability_manager_stub.h" 24 25 namespace OHOS { 26 namespace AAFwk { 27 class MockAbilityManagerStub : public AbilityManagerStub { 28 public: 29 int StartAbility(const Want& want, int32_t userId = DEFAULT_INVAL_VALUE, int requestCode = -1); 30 31 MOCK_METHOD4(StartAbility, int(const Want& want, const sptr<IRemoteObject>& callerToken, 32 int32_t userId, int requestCode)); 33 MOCK_METHOD5(StartAbilityAsCaller, int(const Want &want, const sptr<IRemoteObject> &callerToken, 34 sptr<IRemoteObject> asCallerSourceToken, int32_t userId, int requestCode)); 35 MOCK_METHOD3(TerminateAbility, int(const sptr<IRemoteObject>& token, int resultCode, const Want* resultWant)); 36 MOCK_METHOD3(TerminateUIExtensionAbility, int(const sptr<SessionInfo> &extensionSessionInfo, int resultCode, 37 const Want* resultWant)); 38 int CloseAbility(const sptr<IRemoteObject>& token, int resultCode = DEFAULT_INVAL_VALUE, 39 const Want* resultWant = nullptr) override 40 { 41 return 0; 42 } 43 int MinimizeAbility(const sptr<IRemoteObject>& token, bool fromUser = false) override 44 { 45 return 0; 46 } 47 int MinimizeUIExtensionAbility(const sptr<SessionInfo> &extensionSessionInfo, bool fromUser = false) override 48 { 49 return 0; 50 } 51 MOCK_METHOD4(ConnectAbility, int(const Want& want, const sptr<IAbilityConnection>& connect, 52 const sptr<IRemoteObject>& callerToken, int32_t userId)); 53 MOCK_METHOD1(DisconnectAbility, int(sptr<IAbilityConnection> connect)); 54 MOCK_METHOD3(AcquireDataAbility, 55 sptr<IAbilityScheduler>(const Uri& uri, bool tryBind, const sptr<IRemoteObject>& callerToken)); 56 MOCK_METHOD2( 57 ReleaseDataAbility, int(sptr<IAbilityScheduler> dataAbilityScheduler, const sptr<IRemoteObject>& callerToken)); 58 MOCK_METHOD2(AttachAbilityThread, int(const sptr<IAbilityScheduler>& scheduler, const sptr<IRemoteObject>& token)); 59 MOCK_METHOD3(AbilityTransitionDone, int(const sptr<IRemoteObject>& token, int state, const PacMap&)); 60 MOCK_METHOD2( 61 ScheduleConnectAbilityDone, int(const sptr<IRemoteObject>& token, const sptr<IRemoteObject>& remoteObject)); 62 MOCK_METHOD1(ScheduleDisconnectAbilityDone, int(const sptr<IRemoteObject>& token)); 63 MOCK_METHOD1(ScheduleCommandAbilityDone, int(const sptr<IRemoteObject>& token)); 64 MOCK_METHOD4(ScheduleCommandAbilityWindowDone, int(const sptr<IRemoteObject> &token, 65 const sptr<SessionInfo> &sessionInfo, WindowCommand winCmd, AbilityCommand abilityCmd)); 66 67 void DumpState(const std::string& args, std::vector<std::string>& state); 68 69 int StopServiceAbility(const Want& want, int32_t userId = DEFAULT_INVAL_VALUE, 70 const sptr<IRemoteObject> &token = nullptr); 71 72 MOCK_METHOD2(KillProcess, int(const std::string& bundleName, const bool clearPageStack)); 73 MOCK_METHOD2(UninstallApp, int(const std::string& bundleName, int32_t uid)); 74 MOCK_METHOD3(UninstallApp, int32_t(const std::string& bundleName, int32_t uid, int32_t appIndex)); 75 76 MOCK_METHOD3( 77 GetWantSender, sptr<IWantSender>(const WantSenderInfo& wantSenderInfo, const sptr<IRemoteObject>& callerToken, 78 int32_t uid)); 79 MOCK_METHOD2(SendWantSender, int(sptr<IWantSender> target, const SenderInfo& senderInfo)); 80 MOCK_METHOD1(CancelWantSender, void(const sptr<IWantSender>& sender)); 81 MOCK_METHOD1(GetPendingWantUid, int(const sptr<IWantSender>& target)); 82 MOCK_METHOD1(GetPendingWantUserId, int(const sptr<IWantSender>& target)); 83 MOCK_METHOD1(GetPendingWantBundleName, std::string(const sptr<IWantSender>& target)); 84 MOCK_METHOD1(GetPendingWantCode, int(const sptr<IWantSender>& target)); 85 MOCK_METHOD1(GetPendingWantType, int(const sptr<IWantSender>& target)); 86 MOCK_METHOD2(RegisterCancelListener, void(const sptr<IWantSender>& sender, const sptr<IWantReceiver>& receiver)); 87 MOCK_METHOD2(UnregisterCancelListener, void(const sptr<IWantSender>& sender, const sptr<IWantReceiver>& receiver)); 88 MOCK_METHOD2(GetPendingRequestWant, int(const sptr<IWantSender>& target, std::shared_ptr<Want>& want)); 89 MOCK_METHOD5(StartAbility, int(const Want& want, const AbilityStartSetting& abilityStartSetting, 90 const sptr<IRemoteObject>& callerToken, int32_t userId, int requestCode)); 91 MOCK_METHOD4(StartAbilityByInsightIntent, int32_t(const Want& want, const sptr<IRemoteObject>& callerToken, 92 uint64_t intentId, int32_t userId)); 93 MOCK_METHOD1(GetMissionIdByToken, int32_t(const sptr<IRemoteObject>& token)); 94 MOCK_METHOD1(GetPendinTerminateAbilityTestgRequestWant, void(int id)); 95 MOCK_METHOD3(StartContinuation, int(const Want& want, const sptr<IRemoteObject>& abilityToken, int32_t status)); 96 MOCK_METHOD2(NotifyContinuationResult, int(int32_t missionId, int32_t result)); 97 MOCK_METHOD5(ContinueMission, int(const std::string& srcDeviceId, const std::string& dstDeviceId, 98 int32_t missionId, const sptr<IRemoteObject>& callBack, AAFwk::WantParams& wantParams)); 99 MOCK_METHOD3(ContinueAbility, int(const std::string& deviceId, int32_t missionId, uint32_t versionCode)); 100 MOCK_METHOD3(NotifyCompleteContinuation, void(const std::string& deviceId, int32_t sessionId, bool isSuccess)); 101 102 MOCK_METHOD1(LockMissionForCleanup, int(int32_t missionId)); 103 MOCK_METHOD1(UnlockMissionForCleanup, int(int32_t missionId)); 104 MOCK_METHOD1(RegisterMissionListener, int(const sptr<IMissionListener>& listener)); 105 MOCK_METHOD1(UnRegisterMissionListener, int(const sptr<IMissionListener>& listener)); 106 MOCK_METHOD3( 107 GetMissionInfos, int(const std::string& deviceId, int32_t numMax, std::vector<MissionInfo>& missionInfos)); 108 MOCK_METHOD3(GetMissionInfo, int(const std::string& deviceId, int32_t missionId, MissionInfo& missionInfo)); 109 MOCK_METHOD1(CleanMission, int(int32_t missionId)); 110 MOCK_METHOD0(CleanAllMissions, int()); 111 MOCK_METHOD1(MoveMissionToFront, int(int32_t missionId)); 112 MOCK_METHOD2(MoveMissionToFront, int(int32_t missionId, const StartOptions& startOptions)); 113 MOCK_METHOD2(MoveMissionsToForeground, int(const std::vector<int32_t>& missionIds, int32_t topMissionId)); 114 MOCK_METHOD2(MoveMissionsToBackground, int(const std::vector<int32_t>& missionIds, std::vector<int32_t>& result)); 115 MOCK_METHOD2(SetMissionContinueState, int(const sptr<IRemoteObject>& token, const AAFwk::ContinueState& state)); 116 MOCK_METHOD2(SetMissionLabel, int(const sptr<IRemoteObject>& token, const std::string& label)); 117 MOCK_METHOD2(SetMissionIcon, int(const sptr<IRemoteObject>& token, 118 const std::shared_ptr<OHOS::Media::PixelMap>& icon)); 119 MOCK_METHOD1(GetAbilityRunningInfos, int(std::vector<AbilityRunningInfo>& info)); 120 MOCK_METHOD2(GetExtensionRunningInfos, int(int upperLimit, std::vector<ExtensionRunningInfo>& info)); 121 MOCK_METHOD1(GetProcessRunningInfos, int(std::vector<AppExecFwk::RunningProcessInfo>& info)); 122 MOCK_METHOD2(GetWantSenderInfo, int(const sptr<IWantSender>& target, std::shared_ptr<WantSenderInfo>& info)); 123 MOCK_METHOD2(AcquireShareData, int32_t(const int32_t &missionId, const sptr<IAcquireShareDataCallback> &shareData)); 124 MOCK_METHOD4(ShareDataDone, int32_t(const sptr<IRemoteObject> &token, 125 const int32_t &resultCode, const int32_t &uniqueId, WantParams &wantParam)); 126 MOCK_METHOD2(GetAbilityTokenByCalleeObj, void(const sptr<IRemoteObject> &callStub, sptr<IRemoteObject> &token)); 127 virtual int StartAbility( 128 const Want& want, 129 const StartOptions& startOptions, 130 const sptr<IRemoteObject>& callerToken, 131 int32_t userId = DEFAULT_INVAL_VALUE, 132 int requestCode = DEFAULT_INVAL_VALUE) 133 { 134 return 0; 135 } 136 137 virtual int StartAbilityAsCaller( 138 const Want& want, 139 const StartOptions& startOptions, 140 const sptr<IRemoteObject>& callerToken, 141 sptr<IRemoteObject> asCallerSourceToken, 142 int32_t userId = DEFAULT_INVAL_VALUE, 143 int requestCode = DEFAULT_INVAL_VALUE) 144 { 145 return 0; 146 } 147 StartUser(int userId,sptr<IUserCallback> callback)148 int StartUser(int userId, sptr<IUserCallback> callback) override 149 { 150 return 0; 151 } 152 StopUser(int userId,const sptr<IUserCallback> & callback)153 int StopUser(int userId, const sptr<IUserCallback>& callback) override 154 { 155 return 0; 156 } 157 LogoutUser(int32_t userId)158 int LogoutUser(int32_t userId) override 159 { 160 return 0; 161 } 162 StartSyncRemoteMissions(const std::string & devId,bool fixConflict,int64_t tag)163 int StartSyncRemoteMissions(const std::string& devId, bool fixConflict, int64_t tag) override 164 { 165 return 0; 166 } StopSyncRemoteMissions(const std::string & devId)167 int StopSyncRemoteMissions(const std::string& devId) override 168 { 169 return 0; 170 } RegisterMissionListener(const std::string & deviceId,const sptr<IRemoteMissionListener> & listener)171 int RegisterMissionListener(const std::string& deviceId, 172 const sptr<IRemoteMissionListener>& listener) override 173 { 174 return 0; 175 } UnRegisterMissionListener(const std::string & deviceId,const sptr<IRemoteMissionListener> & listener)176 int UnRegisterMissionListener(const std::string& deviceId, 177 const sptr<IRemoteMissionListener>& listener) override 178 { 179 return 0; 180 } 181 ReportDrawnCompleted(const sptr<IRemoteObject> & callerToken)182 int32_t ReportDrawnCompleted(const sptr<IRemoteObject>& callerToken) override 183 { 184 return 0; 185 } 186 187 virtual int StartAbilityByCall(const Want& want, const sptr<IAbilityConnection>& connect, 188 const sptr<IRemoteObject>& callerToken, int32_t userId = DEFAULT_INVAL_VALUE) 189 { 190 return 0; 191 } ReleaseCall(const sptr<IAbilityConnection> & connect,const AppExecFwk::ElementName & element)192 virtual int ReleaseCall(const sptr<IAbilityConnection>& connect, 193 const AppExecFwk::ElementName& element) 194 { 195 return 0; 196 } 197 GetMissionSnapshot(const std::string & deviceId,int32_t missionId,MissionSnapshot & snapshot,bool isLowResolution)198 virtual int GetMissionSnapshot(const std::string& deviceId, int32_t missionId, 199 MissionSnapshot& snapshot, bool isLowResolution) 200 { 201 return 0; 202 } 203 RegisterSnapshotHandler(const sptr<ISnapshotHandler> & handler)204 virtual int RegisterSnapshotHandler(const sptr<ISnapshotHandler>& handler) 205 { 206 return 0; 207 } 208 209 int RegisterWindowManagerServiceHandler(const sptr<IWindowManagerServiceHandler>& handler, 210 bool animationEnabled = true) override 211 { 212 return 0; 213 } 214 GetForegroundUIAbilities(std::vector<AppExecFwk::AbilityStateData> & list)215 virtual int32_t GetForegroundUIAbilities(std::vector<AppExecFwk::AbilityStateData> &list) 216 { 217 return 0; 218 } 219 CompleteFirstFrameDrawing(const sptr<IRemoteObject> & abilityToken)220 void CompleteFirstFrameDrawing(const sptr<IRemoteObject>& abilityToken) override {} 221 SetAbilityController(const sptr<AppExecFwk::IAbilityController> & abilityController,bool imAStabilityTest)222 int SetAbilityController(const sptr<AppExecFwk::IAbilityController>& abilityController, 223 bool imAStabilityTest) override 224 { 225 return 0; 226 } IsRunningInStabilityTest()227 bool IsRunningInStabilityTest() override 228 { 229 return true; 230 } DumpSysState(const std::string & args,std::vector<std::string> & info,bool isClient,bool isUserID,int UserID)231 void DumpSysState( 232 const std::string& args, std::vector<std::string>& info, bool isClient, bool isUserID, int UserID) override 233 {} 234 235 MOCK_METHOD2(StartUserTest, int(const Want& want, const sptr<IRemoteObject>& observer)); 236 FinishUserTest(const std::string & msg,const int64_t & resultCode,const std::string & bundleName)237 int FinishUserTest( 238 const std::string& msg, const int64_t& resultCode, const std::string& bundleName) override 239 { 240 return 0; 241 } 242 GetTopAbility(sptr<IRemoteObject> & token)243 int GetTopAbility(sptr<IRemoteObject>& token) override 244 { 245 return 0; 246 } 247 DelegatorDoAbilityForeground(const sptr<IRemoteObject> & token)248 int DelegatorDoAbilityForeground(const sptr<IRemoteObject>& token) override 249 { 250 return 0; 251 } 252 DelegatorDoAbilityBackground(const sptr<IRemoteObject> & token)253 int DelegatorDoAbilityBackground(const sptr<IRemoteObject>& token) override 254 { 255 return 0; 256 } 257 SetApplicationAutoStartupByEDM(const AutoStartupInfo & info,bool flag)258 int32_t SetApplicationAutoStartupByEDM(const AutoStartupInfo &info, bool flag) override 259 { 260 return 0; 261 } 262 CancelApplicationAutoStartupByEDM(const AutoStartupInfo & info,bool flag)263 int32_t CancelApplicationAutoStartupByEDM(const AutoStartupInfo &info, bool flag) override 264 { 265 return 0; 266 } 267 268 #ifdef ABILITY_COMMAND_FOR_TEST 269 MOCK_METHOD2(ForceTimeoutForTest, int(const std::string& abilityName, const std::string& state)); 270 #endif 271 MOCK_METHOD2(IsValidMissionIds, int32_t(const std::vector<int32_t>&, std::vector<MissionValidResult>&)); 272 MOCK_METHOD1(RegisterAppDebugListener, int32_t(sptr<AppExecFwk::IAppDebugListener> listener)); 273 MOCK_METHOD1(UnregisterAppDebugListener, int32_t(sptr<AppExecFwk::IAppDebugListener> listener)); 274 MOCK_METHOD1(AttachAppDebug, int32_t(const std::string &bundleName)); 275 MOCK_METHOD1(DetachAppDebug, int32_t(const std::string &bundleName)); 276 MOCK_METHOD3(ExecuteIntent, int32_t(uint64_t key, const sptr<IRemoteObject> &callerToken, 277 const InsightIntentExecuteParam ¶m)); 278 MOCK_METHOD3(ExecuteInsightIntentDone, int32_t(const sptr<IRemoteObject> &token, uint64_t intentId, 279 const InsightIntentExecuteResult &result)); 280 MOCK_METHOD5(StartAbilityWithSpecifyTokenId, int(const Want& want, const sptr<IRemoteObject>& callerToken, 281 uint32_t specifyTokenId, int32_t userId, int requestCode)); 282 public: 283 std::string powerState_; 284 }; 285 } // namespace AAFwk 286 } // namespace OHOS 287 288 #endif // OHOS_ABILITY_RUNTIME_MOCK_ABILITY_MANAGER_STUB_H 289