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_MOCK_DISTRIBUTED_SCHED_H 17 #define OHOS_MOCK_DISTRIBUTED_SCHED_H 18 19 #include "gmock/gmock.h" 20 #include "distributed_sched_interface.h" 21 #include "iremote_proxy.h" 22 #include "iremote_stub.h" 23 #include "form_share_info.h" 24 #ifdef SUPPORT_DISTRIBUTED_MISSION_MANAGER 25 #include "mission_info.h" 26 #include "mission/distributed_mission_info.h" 27 #endif 28 29 namespace OHOS { 30 namespace DistributedSchedule { 31 class DistributedSchedStub : public IRemoteStub<IDistributedSched> { 32 public: 33 DistributedSchedStub(); 34 virtual ~DistributedSchedStub(); 35 int32_t OnRemoteRequest(uint32_t code, MessageParcel &data, 36 MessageParcel &reply, MessageOption &option) override; 37 38 int32_t StartRemoteShareFormInner(MessageParcel &data, MessageParcel &reply); 39 bool EnforceInterfaceToken(MessageParcel &data); 40 MOCK_METHOD2(StartRemoteShareForm, int32_t(const std::string&, const AppExecFwk::FormShareInfo&)); 41 using DistributedSchedFunc = int32_t(DistributedSchedStub::*)(MessageParcel &data, MessageParcel &reply); 42 std::map<uint32_t, DistributedSchedFunc> localFuncsMap_; 43 }; 44 45 46 class DistributedSchedService : public DistributedSchedStub { 47 public: 48 DistributedSchedService() = default; 49 virtual ~DistributedSchedService() = default; 50 51 MOCK_METHOD5(SendResultFromRemote, 52 int32_t(OHOS::AAFwk::Want&, int32_t, const CallerInfo&, const AccountInfo&, int32_t)); 53 StartRemoteAbility(const OHOS::AAFwk::Want & want,int32_t callerUid,int32_t requestCode,uint32_t accessToken)54 int32_t StartRemoteAbility(const OHOS::AAFwk::Want &want, int32_t callerUid, int32_t requestCode, 55 uint32_t accessToken) override 56 { 57 return 0; 58 } StartAbilityFromRemote(const OHOS::AAFwk::Want & want,const OHOS::AppExecFwk::AbilityInfo & abilityInfo,int32_t requestCode,const CallerInfo & callerInfo,const AccountInfo & accountInfo)59 int32_t StartAbilityFromRemote(const OHOS::AAFwk::Want &want, 60 const OHOS::AppExecFwk::AbilityInfo &abilityInfo, int32_t requestCode, const CallerInfo &callerInfo, 61 const AccountInfo &accountInfo) override 62 { 63 return 0; 64 } ContinueMission(const std::string & srcDeviceId,const std::string & dstDeviceId,int32_t missionId,const sptr<IRemoteObject> & callback,const OHOS::AAFwk::WantParams & wantParams)65 int32_t ContinueMission(const std::string &srcDeviceId, const std::string &dstDeviceId, 66 int32_t missionId, const sptr<IRemoteObject> &callback, const OHOS::AAFwk::WantParams &wantParams) override 67 { 68 return 0; 69 } StartContinuation(const OHOS::AAFwk::Want & want,int32_t missionId,int32_t callerUid,int32_t status,uint32_t accessToken)70 int32_t StartContinuation(const OHOS::AAFwk::Want &want, int32_t missionId, int32_t callerUid, 71 int32_t status, uint32_t accessToken) override 72 { 73 return 0; 74 } NotifyCompleteContinuation(const std::u16string & devId,int32_t sessionId,bool isSuccess)75 void NotifyCompleteContinuation(const std::u16string &devId, int32_t sessionId, bool isSuccess) override 76 { 77 return; 78 } NotifyContinuationResultFromRemote(int32_t sessionId,bool isSuccess,const std::string dstInfo)79 int32_t NotifyContinuationResultFromRemote(int32_t sessionId, bool isSuccess, const std::string dstInfo) override 80 { 81 return 0; 82 } ConnectRemoteAbility(const OHOS::AAFwk::Want & want,const sptr<IRemoteObject> & connect,int32_t callerUid,int32_t callerPid,uint32_t accessToken)83 int32_t ConnectRemoteAbility(const OHOS::AAFwk::Want &want, const sptr<IRemoteObject> &connect, 84 int32_t callerUid, int32_t callerPid, uint32_t accessToken) override 85 { 86 return 0; 87 } DisconnectRemoteAbility(const sptr<IRemoteObject> & connect,int32_t callerUid,uint32_t accessToken)88 int32_t DisconnectRemoteAbility(const sptr<IRemoteObject> &connect, int32_t callerUid, 89 uint32_t accessToken) override 90 { 91 return 0; 92 } ConnectAbilityFromRemote(const OHOS::AAFwk::Want & want,const AppExecFwk::AbilityInfo & abilityInfo,const sptr<IRemoteObject> & connect,const CallerInfo & callerInfo,const AccountInfo & accountInfo)93 int32_t ConnectAbilityFromRemote(const OHOS::AAFwk::Want &want, const AppExecFwk::AbilityInfo &abilityInfo, 94 const sptr<IRemoteObject> &connect, const CallerInfo &callerInfo, const AccountInfo &accountInfo) override 95 { 96 return 0; 97 } DisconnectAbilityFromRemote(const sptr<IRemoteObject> & connect,int32_t uid,const std::string & sourceDeviceId)98 int32_t DisconnectAbilityFromRemote(const sptr<IRemoteObject> &connect, 99 int32_t uid, const std::string &sourceDeviceId) override 100 { 101 return 0; 102 } NotifyProcessDiedFromRemote(const CallerInfo & callerInfo)103 int32_t NotifyProcessDiedFromRemote(const CallerInfo &callerInfo) override 104 { 105 return 0; 106 } 107 #ifdef SUPPORT_DISTRIBUTED_MISSION_MANAGER GetMissionInfos(const std::string & deviceId,int32_t numMissions,std::vector<AAFwk::MissionInfo> & missionInfos)108 int32_t GetMissionInfos(const std::string &deviceId, int32_t numMissions, 109 std::vector<AAFwk::MissionInfo> &missionInfos) override 110 { 111 return 0; 112 } StoreSnapshotInfo(const std::string & deviceId,int32_t missionId,const uint8_t * byteStream,size_t len)113 int32_t StoreSnapshotInfo(const std::string &deviceId, int32_t missionId, 114 const uint8_t* byteStream, size_t len) override 115 { 116 return 0; 117 } RemoveSnapshotInfo(const std::string & deviceId,int32_t missionId)118 int32_t RemoveSnapshotInfo(const std::string &deviceId, int32_t missionId) override 119 { 120 return 0; 121 } NotifyMissionsChangedFromRemote(const std::vector<DstbMissionInfo> & missionInfos,const CallerInfo & callerInfo)122 int32_t NotifyMissionsChangedFromRemote(const std::vector<DstbMissionInfo> &missionInfos, 123 const CallerInfo &callerInfo) override 124 { 125 return 0; 126 } CheckSupportOsd(const std::string & deviceId)127 int32_t CheckSupportOsd(const std::string &deviceId) override 128 { 129 return 0; 130 } GetCachedOsdSwitch(std::vector<std::u16string> & deviceIds,std::vector<int32_t> & values)131 void GetCachedOsdSwitch(std::vector<std::u16string> &deviceIds, std::vector<int32_t> &values) override 132 { 133 return 0; 134 } GetOsdSwitchValueFromRemote()135 int32_t GetOsdSwitchValueFromRemote() override 136 { 137 return 0; 138 } UpdateOsdSwitchValueFromRemote(int32_t switchVal,const std::string & sourceDeviceId)139 int32_t UpdateOsdSwitchValueFromRemote(int32_t switchVal, const std::string &sourceDeviceId) override 140 { 141 return 0; 142 } GetRemoteSnapshotInfo(const std::u16string & deviceId,int32_t missionId)143 std::unique_ptr<Snapshot> GetRemoteSnapshotInfo(const std::u16string &deviceId, int32_t missionId) override 144 { 145 return 0; 146 } GetRemoteMissionSnapshotInfo(const std::string & networkId,int32_t missionId,std::unique_ptr<AAFwk::MissionSnapshot> & missionSnapshot)147 int32_t GetRemoteMissionSnapshotInfo(const std::string &networkId, int32_t missionId, 148 std::unique_ptr<AAFwk::MissionSnapshot> &missionSnapshot) override 149 { 150 return 0; 151 } StartSyncRemoteMissions(const std::string & devId,bool fixConflict,int64_t tag)152 int32_t StartSyncRemoteMissions(const std::string &devId, bool fixConflict, int64_t tag) override 153 { 154 return 0; 155 } StartSyncMissionsFromRemote(const CallerInfo & callerInfo,std::vector<DstbMissionInfo> & missionInfos)156 int32_t StartSyncMissionsFromRemote(const CallerInfo &callerInfo, 157 std::vector<DstbMissionInfo> &missionInfos) override 158 { 159 return 0; 160 } StopSyncRemoteMissions(const std::string & devId)161 int32_t StopSyncRemoteMissions(const std::string &devId) override 162 { 163 return 0; 164 } StopSyncMissionsFromRemote(const CallerInfo & callerInfo)165 int32_t StopSyncMissionsFromRemote(const CallerInfo &callerInfo) override 166 { 167 return 0; 168 } RegisterMissionListener(const std::u16string & devId,const sptr<IRemoteObject> & obj)169 int32_t RegisterMissionListener(const std::u16string &devId, const sptr<IRemoteObject> &obj) override 170 { 171 return 0; 172 } UnRegisterMissionListener(const std::u16string & devId,const sptr<IRemoteObject> & obj)173 int32_t UnRegisterMissionListener(const std::u16string &devId, const sptr<IRemoteObject> &obj) override 174 { 175 return 0; 176 } 177 #endif StartRemoteAbilityByCall(const OHOS::AAFwk::Want & want,const sptr<IRemoteObject> & connect,int32_t callerUid,int32_t callerPid,uint32_t accessToken)178 int32_t StartRemoteAbilityByCall(const OHOS::AAFwk::Want &want, const sptr<IRemoteObject> &connect, 179 int32_t callerUid, int32_t callerPid, uint32_t accessToken) override 180 { 181 return 0; 182 } ReleaseRemoteAbility(const sptr<IRemoteObject> & connect,const AppExecFwk::ElementName & element)183 int32_t ReleaseRemoteAbility(const sptr<IRemoteObject> &connect, 184 const AppExecFwk::ElementName &element) override 185 { 186 return 0; 187 } StartAbilityByCallFromRemote(const OHOS::AAFwk::Want & want,const sptr<IRemoteObject> & connect,const CallerInfo & callerInfo,const AccountInfo & accountInfo)188 int32_t StartAbilityByCallFromRemote(const OHOS::AAFwk::Want &want, const sptr<IRemoteObject> &connect, 189 const CallerInfo &callerInfo, const AccountInfo &accountInfo) override 190 { 191 return 0; 192 } ReleaseAbilityFromRemote(const sptr<IRemoteObject> & connect,const AppExecFwk::ElementName & element,const CallerInfo & callerInfo)193 int32_t ReleaseAbilityFromRemote(const sptr<IRemoteObject> &connect, const AppExecFwk::ElementName &element, 194 const CallerInfo &callerInfo) override 195 { 196 return 0; 197 } NotifyStateChangedFromRemote(int32_t abilityState,int32_t missionId,const AppExecFwk::ElementName & element)198 int32_t NotifyStateChangedFromRemote(int32_t abilityState, int32_t missionId, 199 const AppExecFwk::ElementName& element) override 200 { 201 return 0; 202 } 203 #ifdef SUPPORT_DISTRIBUTED_FORM_SHARE StartShareFormFromRemote(const std::string & remoteDeviceId,const FormShareInfo & formShareInfo)204 int32_t StartShareFormFromRemote( 205 const std::string &remoteDeviceId, const FormShareInfo &formShareInfo) override 206 { 207 return 0; 208 } 209 #endif GetDistributedComponentList(std::vector<std::string> & distributedComponents)210 int32_t GetDistributedComponentList(std::vector<std::string> &distributedComponents) override 211 { 212 return 0; 213 } 214 int32_t StopRemoteExtensionAbility( 215 const OHOS::AAFwk::Want& want, int32_t callerUid, uint32_t accessToken, int32_t extensionType) override; 216 int32_t StopExtensionAbilityFromRemote(const OHOS::AAFwk::Want& want, 217 const CallerInfo& callerInfo, const AccountInfo& accountInfo, int32_t extensionType) override; 218 }; 219 } // namespace DistributedSchedule 220 } // namespace OHOS 221 #endif // OHOS_DISTRIBUTED_SCHED_PROXY_H