1 /* 2 * Copyright (c) 2021-2022 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_ABILITY_SCHEDULER_MOCK_H 17 #define OHOS_ABILITY_RUNTIME_ABILITY_SCHEDULER_MOCK_H 18 19 #pragma once 20 #include <iremote_object.h> 21 #include <iremote_stub.h> 22 #include <gmock/gmock.h> 23 #include "ability_scheduler_interface.h" 24 25 namespace OHOS { 26 namespace AAFwk { 27 class AbilitySchedulerMock : public IRemoteStub<IAbilityScheduler> { 28 public: AbilitySchedulerMock()29 AbilitySchedulerMock() : code_(0) 30 {} ~AbilitySchedulerMock()31 virtual ~AbilitySchedulerMock() 32 {} 33 34 MOCK_METHOD3(ScheduleAbilityTransaction, bool(const Want&, const LifeCycleStateInfo&, sptr<SessionInfo>)); 35 MOCK_METHOD3(SendResult, void(int, int, const Want&)); 36 MOCK_METHOD1(ScheduleConnectAbility, void(const Want&)); 37 MOCK_METHOD1(ScheduleDisconnectAbility, void(const Want&)); 38 MOCK_METHOD0(ScheduleSaveAbilityState, void()); 39 MOCK_METHOD1(ScheduleRestoreAbilityState, void(const PacMap&)); 40 MOCK_METHOD1(ScheduleNewWant, void(const Want&)); 41 MOCK_METHOD4(SendRequest, int(uint32_t, MessageParcel&, MessageParcel&, MessageOption&)); 42 MOCK_METHOD3(ScheduleCommandAbility, void(const Want&, bool, int)); 43 MOCK_METHOD3(ScheduleCommandAbilityWindow, void(const Want &, const sptr<SessionInfo> &, WindowCommand)); 44 MOCK_METHOD1(NotifyContinuationResult, void(int32_t result)); 45 MOCK_METHOD2(ContinueAbility, void(const std::string& deviceId, uint32_t versionCode)); 46 MOCK_METHOD2(DumpAbilityInfo, void(const std::vector<std::string>& params, std::vector<std::string>& info)); 47 MOCK_METHOD1(ScheduleShareData, void(const int32_t &uniqueId)); 48 MOCK_METHOD0(SchedulePrepareTerminateAbility, bool()); InvokeSendRequest(uint32_t code,MessageParcel & data,MessageParcel & reply,MessageOption & option)49 int InvokeSendRequest(uint32_t code, MessageParcel& data, MessageParcel& reply, MessageOption& option) 50 { 51 code_ = code; 52 return 0; 53 } 54 InvokeErrorSendRequest(uint32_t code,MessageParcel & data,MessageParcel & reply,MessageOption & option)55 int InvokeErrorSendRequest(uint32_t code, MessageParcel& data, MessageParcel& reply, MessageOption& option) 56 { 57 code_ = code; 58 return UNKNOWN_ERROR; 59 } 60 GetFileTypes(const Uri & uri,const std::string & mimeTypeFilter)61 std::vector<std::string> GetFileTypes(const Uri& uri, const std::string& mimeTypeFilter) 62 { 63 std::vector<std::string> types; 64 return types; 65 } 66 OpenFile(const Uri & uri,const std::string & mode)67 int OpenFile(const Uri& uri, const std::string& mode) 68 { 69 return -1; 70 } 71 Insert(const Uri & uri,const NativeRdb::ValuesBucket & value)72 int Insert(const Uri& uri, const NativeRdb::ValuesBucket& value) 73 { 74 return -1; 75 } 76 Update(const Uri & uri,const NativeRdb::ValuesBucket & value,const NativeRdb::DataAbilityPredicates & predicates)77 int Update(const Uri& uri, const NativeRdb::ValuesBucket& value, const NativeRdb::DataAbilityPredicates& predicates) 78 { 79 return -1; 80 } 81 Delete(const Uri & uri,const NativeRdb::DataAbilityPredicates & predicates)82 int Delete(const Uri& uri, const NativeRdb::DataAbilityPredicates& predicates) 83 { 84 return -1; 85 } 86 Call(const Uri & uri,const std::string & method,const std::string & arg,const AppExecFwk::PacMap & pacMap)87 std::shared_ptr<AppExecFwk::PacMap> Call( 88 const Uri& uri, const std::string& method, const std::string& arg, const AppExecFwk::PacMap& pacMap) 89 { 90 return nullptr; 91 } 92 Query(const Uri & uri,std::vector<std::string> & columns,const NativeRdb::DataAbilityPredicates & predicates)93 std::shared_ptr<NativeRdb::AbsSharedResultSet> Query( 94 const Uri& uri, std::vector<std::string>& columns, const NativeRdb::DataAbilityPredicates& predicates) 95 { 96 return nullptr; 97 } 98 GetType(const Uri & uri)99 virtual std::string GetType(const Uri& uri) override 100 { 101 return " "; 102 } 103 OpenRawFile(const Uri & uri,const std::string & mode)104 int OpenRawFile(const Uri& uri, const std::string& mode) 105 { 106 return -1; 107 } 108 Reload(const Uri & uri,const PacMap & extras)109 bool Reload(const Uri& uri, const PacMap& extras) 110 { 111 return false; 112 } 113 BatchInsert(const Uri & uri,const std::vector<NativeRdb::ValuesBucket> & values)114 int BatchInsert(const Uri& uri, const std::vector<NativeRdb::ValuesBucket>& values) 115 { 116 return -1; 117 } 118 NormalizeUri(const Uri & uri)119 Uri NormalizeUri(const Uri& uri) 120 { 121 Uri urivalue(""); 122 return urivalue; 123 } 124 DenormalizeUri(const Uri & uri)125 Uri DenormalizeUri(const Uri& uri) 126 { 127 Uri urivalue(""); 128 return urivalue; 129 } 130 ScheduleRegisterObserver(const Uri & uri,const sptr<IDataAbilityObserver> & dataObserver)131 virtual bool ScheduleRegisterObserver(const Uri& uri, const sptr<IDataAbilityObserver>& dataObserver) 132 { 133 return true; 134 } 135 ScheduleUnregisterObserver(const Uri & uri,const sptr<IDataAbilityObserver> & dataObserver)136 virtual bool ScheduleUnregisterObserver(const Uri& uri, const sptr<IDataAbilityObserver>& dataObserver) 137 { 138 return true; 139 } 140 ScheduleNotifyChange(const Uri & uri)141 virtual bool ScheduleNotifyChange(const Uri& uri) 142 { 143 return true; 144 } 145 ExecuteBatch(const std::vector<std::shared_ptr<AppExecFwk::DataAbilityOperation>> & operations)146 virtual std::vector<std::shared_ptr<AppExecFwk::DataAbilityResult>> ExecuteBatch( 147 const std::vector<std::shared_ptr<AppExecFwk::DataAbilityOperation>>& operations) 148 { 149 return std::vector<std::shared_ptr<AppExecFwk::DataAbilityResult>>(); 150 } 151 CallRequest()152 virtual void CallRequest() 153 { 154 return; 155 } 156 OnExecuteIntent(const Want & want)157 virtual void OnExecuteIntent(const Want &want) 158 { 159 return; 160 } 161 CreateModalUIExtension(const Want & want)162 virtual int CreateModalUIExtension(const Want &want) 163 { 164 return 0; 165 } 166 UpdateSessionToken(sptr<IRemoteObject> sessionToken)167 virtual void UpdateSessionToken(sptr<IRemoteObject> sessionToken) override {} 168 169 int code_ = 0; 170 }; 171 } // namespace AAFwk 172 } // namespace OHOS 173 #endif // OHOS_ABILITY_RUNTIME_ABILITY_SCHEDULER_MOCK_H