1 /*
2  * Copyright (C) 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 #include <gtest/gtest.h>
17 #include "accessibility_common_helper.h"
18 #include "accessibility_ut_helper.h"
19 #include "system_ability.h"
20 
21 using namespace OHOS;
22 
SystemAbility(const int32_t serviceId,bool runOnCreate)23 SystemAbility::SystemAbility(const int32_t serviceId, bool runOnCreate)
24 {}
~SystemAbility()25 SystemAbility::~SystemAbility()
26 {}
27 
MakeAndRegisterAbility(SystemAbility * systemAbility)28 bool SystemAbility::MakeAndRegisterAbility(SystemAbility* systemAbility)
29 {
30     GTEST_LOG_(INFO) << "aams MOCK SystemAbility MakeAndRegisterAbility";
31     (void)systemAbility;
32     Accessibility::AccessibilityCommonHelper::GetInstance().SetIsServicePublished(false);
33     return true;
34 }
35 
AddSystemAbilityListener(int32_t systemAbilityId)36 bool SystemAbility::AddSystemAbilityListener(int32_t systemAbilityId)
37 {
38     GTEST_LOG_(INFO) << "aams MOCK SystemAbility MakeAndRegisterAbility";
39     OnAddSystemAbility(systemAbilityId, "");
40     return true;
41 }
42 
RemoveSystemAbilityListener(int32_t systemAbilityId)43 bool SystemAbility::RemoveSystemAbilityListener(int32_t systemAbilityId)
44 {
45     GTEST_LOG_(INFO) << "aams MOCK SystemAbility RemoveSystemAbilityListener";
46     (void)systemAbilityId;
47     return true;
48 }
49 
Publish(sptr<IRemoteObject> systemAbility)50 bool SystemAbility::Publish(sptr<IRemoteObject> systemAbility)
51 {
52     GTEST_LOG_(INFO) << "aams MOCK SystemAbility Publish";
53     systemAbility.ForceSetRefPtr(nullptr);
54     Accessibility::AccessibilityCommonHelper::GetInstance().SetIsServicePublished(true);
55     return true;
56 }
57 
StopAbility(int32_t systemAbilityId)58 void SystemAbility::StopAbility(int32_t systemAbilityId)
59 {
60     GTEST_LOG_(INFO) << "aams MOCK SystemAbility StopAbility";
61     (void)systemAbilityId;
62 }
63 
Start()64 void SystemAbility::Start()
65 {
66     GTEST_LOG_(INFO) << "aams MOCK SystemAbility Start";
67 }
68 
Stop()69 void SystemAbility::Stop()
70 {
71     GTEST_LOG_(INFO) << "aams MOCK SystemAbility Stop";
72 }
73 
SADump()74 void SystemAbility::SADump()
75 {}
76 
GetSystemAbilitId() const77 int32_t SystemAbility::GetSystemAbilitId() const
78 {
79     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetSystemAbilitId";
80     return 0;
81 }
82 
SetLibPath(const std::string & libPath)83 void SystemAbility::SetLibPath(const std::string& libPath)
84 {
85     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetLibPath";
86     libPath_ = libPath;
87 }
88 
GetLibPath() const89 const std::string& SystemAbility::GetLibPath() const
90 {
91     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetLibPath";
92     return libPath_;
93 }
94 
SetDependSa(const std::vector<int32_t> & dependSa)95 void SystemAbility::SetDependSa(const std::vector<int32_t>& dependSa)
96 {
97     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetDependSa";
98     dependSa_ = dependSa;
99 }
100 
GetDependSa() const101 const std::vector<int32_t>& SystemAbility::GetDependSa() const
102 {
103     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetDependSa";
104     return dependSa_;
105 }
106 
SetRunOnCreate(bool isRunOnCreate)107 void SystemAbility::SetRunOnCreate(bool isRunOnCreate)
108 {
109     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetRunOnCreate";
110     isRunOnCreate_ = isRunOnCreate;
111 }
112 
IsRunOnCreate() const113 bool SystemAbility::IsRunOnCreate() const
114 {
115     GTEST_LOG_(INFO) << "aams MOCK SystemAbility IsRunOnCreate";
116     return isRunOnCreate_;
117 }
118 
SetDistributed(bool isDistributed)119 void SystemAbility::SetDistributed(bool isDistributed)
120 {
121     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetDistributed";
122     isDistributed_ = isDistributed;
123 }
124 
GetDistributed() const125 bool SystemAbility::GetDistributed() const
126 {
127     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetDistributed";
128     return isDistributed_;
129 }
130 
GetRunningStatus() const131 bool SystemAbility::GetRunningStatus() const
132 {
133     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetRunningStatus";
134     return isRunning_;
135 }
136 
SetDumpLevel(uint32_t dumpLevel)137 void SystemAbility::SetDumpLevel(uint32_t dumpLevel)
138 {
139     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetDumpLevel";
140     dumpLevel_ = dumpLevel;
141 }
142 
GetDumpLevel() const143 uint32_t SystemAbility::GetDumpLevel() const
144 {
145     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetDumpLevel";
146     return dumpLevel_;
147 }
148 
SetDependTimeout(int32_t dependTimeout)149 void SystemAbility::SetDependTimeout(int32_t dependTimeout)
150 {
151     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetDependTimeout";
152     (void)dependTimeout;
153 }
154 
GetDependTimeout() const155 int32_t SystemAbility::GetDependTimeout() const
156 {
157     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetDependTimeout";
158     return dependTimeout_;
159 }
160 
161 // The details should be implemented by subclass
OnDump()162 void SystemAbility::OnDump()
163 {
164     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnDump";
165 }
166 
167 // The details should be implemented by subclass
OnStart()168 void SystemAbility::OnStart()
169 {
170     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnStart";
171 }
172 
OnExtension(const std::string & extension,MessageParcel & data,MessageParcel & reply)173 int32_t SystemAbility::OnExtension(const std::string& extension, MessageParcel& data, MessageParcel& reply)
174 {
175     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnExtension";
176     return 0;
177 }
178 
OnStart(const SystemAbilityOnDemandReason & startReason)179 void SystemAbility::OnStart(const SystemAbilityOnDemandReason& startReason)
180 {
181     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnStart";
182 }
183 
OnIdle(const SystemAbilityOnDemandReason & idleReason)184 int32_t SystemAbility::OnIdle(const SystemAbilityOnDemandReason& idleReason)
185 {
186     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnIdle";
187     return 0;
188 }
189 
OnActive(const SystemAbilityOnDemandReason & activeReason)190 void SystemAbility::OnActive(const SystemAbilityOnDemandReason& activeReason)
191 {
192     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnActive";
193 }
194 
195 // The details should be implemented by subclass
OnStop()196 void SystemAbility::OnStop()
197 {
198     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnStop";
199 }
200 
OnStop(const SystemAbilityOnDemandReason & stopReason)201 void SystemAbility::OnStop(const SystemAbilityOnDemandReason& stopReason)
202 {
203     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnStop";
204 }
205 
206 // The details should be implemented by subclass
OnAddSystemAbility(int32_t systemAbilityId,const std::string & deviceId)207 void SystemAbility::OnAddSystemAbility(int32_t systemAbilityId, const std::string& deviceId)
208 {
209     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnAddSystemAbility";
210     (void)systemAbilityId;
211     (void)deviceId;
212 }
213 
214 // The details should be implemented by subclass
OnRemoveSystemAbility(int32_t systemAbilityId,const std::string & deviceId)215 void SystemAbility::OnRemoveSystemAbility(int32_t systemAbilityId, const std::string& deviceId)
216 {
217     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnRemoveSystemAbility";
218     (void)systemAbilityId;
219     (void)deviceId;
220 }
221 
GetSystemAbility(int32_t systemAbilityId)222 sptr<IRemoteObject> SystemAbility::GetSystemAbility(int32_t systemAbilityId)
223 {
224     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetSystemAbility";
225     (void)systemAbilityId;
226     return nullptr;
227 }
228 
SetCapability(const std::u16string & capability)229 void SystemAbility::SetCapability(const std::u16string& capability)
230 {
231     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetCapability";
232     capability_ = capability;
233 }
234 
GetCapability() const235 const std::u16string& SystemAbility::GetCapability() const
236 {
237     GTEST_LOG_(INFO) << "aams MOCK SystemAbility GetCapability";
238     return capability_;
239 }
240 
SetPermission(const std::u16string & permission)241 void SystemAbility::SetPermission(const std::u16string& permission)
242 {
243     GTEST_LOG_(INFO) << "aams MOCK SystemAbility SetPermission";
244     permission_ = permission;
245 }
246 
247 // The details should be implemented by subclass
OnDeviceLevelChanged(int32_t type,int32_t level,std::string & action)248 void SystemAbility::OnDeviceLevelChanged(int32_t type, int32_t level, std::string& action)
249 {
250     GTEST_LOG_(INFO) << "aams MOCK SystemAbility OnDeviceLevelChanged";
251     (void)type;
252     (void)level;
253     (void)action;
254 }
255