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