1 /*
2 * Copyright (c) 2024-2024 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 "mock_brightness_manager_interface.h"
17
18 #include <cstdint>
19 #include <list>
20 #include <vector>
21 namespace OHOS {
22 namespace DisplayPowerMgr {
23 static std::list<double> g_values{};
24
25 // 打桩接口
MockSetValue(double value)26 void MockSetValue(double value)
27 {
28 g_values.emplace_back(value);
29 }
30
31 // 清理打桩数据
MockClearValues(void)32 void MockClearValues(void)
33 {
34 g_values.clear();
35 }
36
MockReturnValue(void)37 static double MockReturnValue(void)
38 {
39 auto v = g_values.front();
40 g_values.pop_front();
41 return v;
42 }
43
MockReturnBool(void)44 static bool MockReturnBool(void)
45 {
46 return MockReturnValue() >= 0;
47 }
48
Init(uint32_t defaultMax,uint32_t defaultMin)49 void Init(uint32_t defaultMax, uint32_t defaultMin)
50 {
51 }
52
DeInit()53 void DeInit()
54 {
55 }
56
SetDisplayState(uint32_t id,DisplayState state,uint32_t reason)57 void SetDisplayState(uint32_t id, DisplayState state, uint32_t reason)
58 {
59 }
60
GetDisplayState()61 DisplayState GetDisplayState()
62 {
63 return static_cast<DisplayState>(MockReturnBool());
64 }
65
IsSupportLightSensor(void)66 bool IsSupportLightSensor(void)
67 {
68 return MockReturnBool();
69 }
70
IsAutoAdjustBrightness(void)71 bool IsAutoAdjustBrightness(void)
72 {
73 return MockReturnBool();
74 }
75
AutoAdjustBrightness(bool enable)76 bool AutoAdjustBrightness(bool enable)
77 {
78 return MockReturnBool();
79 }
80
SetBrightness(uint32_t value,uint32_t gradualDuration,bool continuous)81 bool SetBrightness(uint32_t value, uint32_t gradualDuration, bool continuous)
82 {
83 return MockReturnBool();
84 }
85
DiscountBrightness(double discount)86 bool DiscountBrightness(double discount)
87 {
88 return MockReturnBool();
89 }
90
GetDiscount()91 double GetDiscount()
92 {
93 return MockReturnValue();
94 }
95
SetScreenOnBrightness()96 void SetScreenOnBrightness()
97 {
98 }
99
GetScreenOnBrightness()100 uint32_t GetScreenOnBrightness()
101 {
102 return MockReturnValue();
103 }
104
OverrideBrightness(uint32_t value,uint32_t gradualDuration)105 bool OverrideBrightness(uint32_t value, uint32_t gradualDuration)
106 {
107 return MockReturnBool();
108 }
109
RestoreBrightness(uint32_t gradualDuration)110 bool RestoreBrightness(uint32_t gradualDuration)
111 {
112 return MockReturnBool();
113 }
114
BoostBrightness(uint32_t timeoutMs,uint32_t gradualDuration)115 bool BoostBrightness(uint32_t timeoutMs, uint32_t gradualDuration)
116 {
117 return MockReturnBool();
118 }
119
CancelBoostBrightness(uint32_t gradualDuration)120 bool CancelBoostBrightness(uint32_t gradualDuration)
121 {
122 return MockReturnBool();
123 }
124
IsBrightnessOverridden()125 bool IsBrightnessOverridden()
126 {
127 return MockReturnBool();
128 }
129
IsBrightnessBoosted()130 bool IsBrightnessBoosted()
131 {
132 return MockReturnBool();
133 }
134
GetBrightness()135 uint32_t GetBrightness()
136 {
137 return MockReturnValue();
138 }
139
GetDeviceBrightness()140 uint32_t GetDeviceBrightness()
141 {
142 return MockReturnValue();
143 }
144
ClearOffset()145 void ClearOffset()
146 {
147 }
148
GetCurrentDisplayId(uint32_t defaultId)149 uint32_t GetCurrentDisplayId(uint32_t defaultId)
150 {
151 return MockReturnValue();
152 }
153
SetDisplayId(uint32_t id)154 void SetDisplayId(uint32_t id)
155 {
156 }
157
SetLightBrightnessThreshold(std::vector<int32_t> threshold,sptr<IDisplayBrightnessCallback> callback)158 uint32_t SetLightBrightnessThreshold(std::vector<int32_t> threshold, sptr<IDisplayBrightnessCallback> callback)
159 {
160 return MockReturnValue();
161 }
162
SetMaxBrightness(double value)163 bool SetMaxBrightness(double value)
164 {
165 return MockReturnBool();
166 }
167
SetMaxBrightnessNit(uint32_t maxNit)168 bool SetMaxBrightnessNit(uint32_t maxNit)
169 {
170 return MockReturnBool();
171 }
172
MockInitBrightnessManagerExt(OHOS::DisplayPowerMgr::BrightnessManagerExt & ext)173 void MockInitBrightnessManagerExt(OHOS::DisplayPowerMgr::BrightnessManagerExt& ext)
174 {
175 ext.mBrightnessManagerExtEnable = true;
176 ext.mBrightnessManagerInitFunc = reinterpret_cast<void*>(Init);
177 ext.mBrightnessManagerDeInitFunc = reinterpret_cast<void*>(DeInit);
178 ext.mSetDisplayStateFunc = reinterpret_cast<void*>(SetDisplayState);
179 ext.mGetDisplayStateFunc = reinterpret_cast<void*>(GetDisplayState);
180 ext.mIsSupportLightSensorFunc = reinterpret_cast<void*>(IsSupportLightSensor);
181 ext.mIsAutoAdjustBrightnessFunc = reinterpret_cast<void*>(IsAutoAdjustBrightness);
182 ext.mAutoAdjustBrightnessFunc = reinterpret_cast<void*>(AutoAdjustBrightness);
183 ext.mSetBrightnessFunc = reinterpret_cast<void*>(SetBrightness);
184 ext.mDiscountBrightnessFunc = reinterpret_cast<void*>(DiscountBrightness);
185 ext.mGetDiscountFunc = reinterpret_cast<void*>(GetDiscount);
186 ext.mSetScreenOnBrightnessFunc = reinterpret_cast<void*>(SetScreenOnBrightness);
187 ext.mGetScreenOnBrightnessFunc = reinterpret_cast<void*>(GetScreenOnBrightness);
188 ext.mOverrideBrightnessFunc = reinterpret_cast<void*>(OverrideBrightness);
189 ext.mRestoreBrightnessFunc = reinterpret_cast<void*>(RestoreBrightness);
190 ext.mBoostBrightnessFunc = reinterpret_cast<void*>(BoostBrightness);
191 ext.mCancelBoostBrightnessFunc = reinterpret_cast<void*>(CancelBoostBrightness);
192 ext.mIsBrightnessOverriddenFunc = reinterpret_cast<void*>(IsBrightnessOverridden);
193 ext.mIsBrightnessBoostedFunc = reinterpret_cast<void*>(IsBrightnessBoosted);
194 ext.mGetBrightnessFunc = reinterpret_cast<void*>(GetBrightness);
195 ext.mGetDeviceBrightnessFunc = reinterpret_cast<void*>(GetDeviceBrightness);
196 ext.mClearOffsetFunc = reinterpret_cast<void*>(ClearOffset);
197 ext.mGetCurrentDisplayIdFunc = reinterpret_cast<void*>(GetCurrentDisplayId);
198 ext.mSetDisplayIdFunc = reinterpret_cast<void*>(SetDisplayId);
199 ext.mSetLightBrightnessThresholdFunc = reinterpret_cast<void*>(SetLightBrightnessThreshold);
200 ext.mSetMaxBrightnessFunc = reinterpret_cast<void*>(SetMaxBrightness);
201 ext.mSetMaxBrightnessNitFunc = reinterpret_cast<void*>(SetMaxBrightnessNit);
202 }
203
MockDeInitBrightnessManagerExt(OHOS::DisplayPowerMgr::BrightnessManagerExt & ext)204 void MockDeInitBrightnessManagerExt(OHOS::DisplayPowerMgr::BrightnessManagerExt& ext)
205 {
206 ext.mBrightnessManagerExtEnable = false;
207 ext.mBrightnessManagerInitFunc = nullptr;
208 ext.mBrightnessManagerDeInitFunc = nullptr;
209 ext.mSetDisplayStateFunc = nullptr;
210 ext.mGetDisplayStateFunc = nullptr;
211 ext.mAutoAdjustBrightnessFunc = nullptr;
212 ext.mSetBrightnessFunc = nullptr;
213 ext.mDiscountBrightnessFunc = nullptr;
214 ext.mGetDiscountFunc = nullptr;
215 ext.mSetScreenOnBrightnessFunc = nullptr;
216 ext.mGetScreenOnBrightnessFunc = nullptr;
217 ext.mOverrideBrightnessFunc = nullptr;
218 ext.mRestoreBrightnessFunc = nullptr;
219 ext.mBoostBrightnessFunc = nullptr;
220 ext.mCancelBoostBrightnessFunc = nullptr;
221 ext.mIsBrightnessOverriddenFunc = nullptr;
222 ext.mIsBrightnessBoostedFunc = nullptr;
223 ext.mGetBrightnessFunc = nullptr;
224 ext.mGetDeviceBrightnessFunc = nullptr;
225 ext.mClearOffsetFunc = nullptr;
226 ext.mGetCurrentDisplayIdFunc = nullptr;
227 ext.mSetDisplayIdFunc = nullptr;
228 ext.mSetLightBrightnessThresholdFunc = nullptr;
229 ext.mSetMaxBrightnessFunc = nullptr;
230 ext.mSetMaxBrightnessNitFunc = nullptr;
231 }
232 }
233 }