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