1# Copyright (c) 2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14import("//build/config/features.gni") 15import("//build/ohos.gni") 16import("//build/test.gni") 17 18#####################hydra-fuzz################### 19import("../../../screenlock.gni") 20 21##############################fuzztest########################################## 22screenlockisdisabled_test = { 23 targetName = "ScreenlockIsdisabledFuzzTest" 24 configFuzzer = "screenlockisdisabled_fuzzer" 25 source = "screenlockisdisabled_fuzzer/screenlockisdisabled_fuzzer.cpp" 26} 27screenlocksetdisabled_test = { 28 targetName = "ScreenlockSetdisabledFuzzTest" 29 configFuzzer = "screenlocksetdisabled_fuzzer" 30 source = "screenlocksetdisabled_fuzzer/screenlocksetdisabled_fuzzer.cpp" 31} 32screenlocksetauthstate_test = { 33 targetName = "ScreenlockSetAuthstateFuzzTest" 34 configFuzzer = "screenlocksetauthstate_fuzzer" 35 source = "screenlocksetauthstate_fuzzer/screenlocksetauthstate_fuzzer.cpp" 36} 37screenlockgetauthstate_test = { 38 targetName = "ScreenlockGetAuthstateFuzzTest" 39 configFuzzer = "screenlockgetauthstate_fuzzer" 40 source = "screenlockgetauthstate_fuzzer/screenlockgetauthstate_fuzzer.cpp" 41} 42screenlockrequeststrong_test = { 43 targetName = "ScreenlockRequestStrongFuzzTest" 44 configFuzzer = "screenlockrequeststrong_fuzzer" 45 source = "screenlockrequeststrong_fuzzer/screenlockrequeststrong_fuzzer.cpp" 46} 47screenlockgetstrongstate_test = { 48 targetName = "ScreenlockGetStrongStateFuzzTest" 49 configFuzzer = "screenlockgetstrongstate_fuzzer" 50 source = "screenlockgetstrongstate_fuzzer/screenlockgetstrongstate_fuzzer.cpp" 51} 52screenlockutils_test = { 53 targetName = "ScreenlockUtilsFuzzTest" 54 configFuzzer = "screenlockutils_fuzzer" 55 source = "screenlockutils_fuzzer/screenlockutils_fuzzer.cpp" 56} 57screenlockauthmanager_test = { 58 targetName = "ScreenlockAuthManagerFuzzTest" 59 configFuzzer = "screenlockauthmanager_fuzzer" 60 source = "screenlockauthmanager_fuzzer/screenlockauthmanager_fuzzer.cpp" 61} 62screenlockislocked_test = { 63 targetName = "ScreenlockIslockedFuzzTest" 64 configFuzzer = "screenlockislocked_fuzzer" 65 source = "screenlockislocked_fuzzer/screenlockislocked_fuzzer.cpp" 66} 67screenlockboundarycode_test = { 68 targetName = "ScreenlockBoundaryCodeFuzzTest" 69 configFuzzer = "screenlockboundarycode_fuzzer" 70 source = "screenlockboundarycode_fuzzer/screenlockboundarycode_fuzzer.cpp" 71} 72screenlockdump_test = { 73 targetName = "ScreenlockDumpFuzzTest" 74 configFuzzer = "screenlockdump_fuzzer" 75 source = "screenlockdump_fuzzer/screenlockdump_fuzzer.cpp" 76} 77screenlockisscreenlocked_test = { 78 targetName = "ScreenlockIsScreenlockedFuzzTest" 79 configFuzzer = "screenlockisscreenlocked_fuzzer" 80 source = "screenlockisscreenlocked_fuzzer/screenlockisscreenlocked_fuzzer.cpp" 81} 82screenlockissecuremode_test = { 83 targetName = "ScreenlockIsSecureModeFuzzTest" 84 configFuzzer = "screenlockissecuremode_fuzzer" 85 source = "screenlockissecuremode_fuzzer/screenlockissecuremode_fuzzer.cpp" 86} 87screenlocklock_test = { 88 targetName = "ScreenlockLockFuzzTest" 89 configFuzzer = "screenlocklock_fuzzer" 90 source = "screenlocklock_fuzzer/screenlocklock_fuzzer.cpp" 91} 92screenlockonsystemevent_test = { 93 targetName = "ScreenlockOnSystemEventFuzzTest" 94 configFuzzer = "screenlockonsystemevent_fuzzer" 95 source = "screenlockonsystemevent_fuzzer/screenlockonsystemevent_fuzzer.cpp" 96} 97screenlocksendscreenlockevent_test = { 98 targetName = "ScreenlockSendScreenlockEventFuzzTest" 99 configFuzzer = "screenlocksendscreenlockevent_fuzzer" 100 source = "screenlocksendscreenlockevent_fuzzer/screenlocksendscreenlockevent_fuzzer.cpp" 101} 102screenlockunlockscreen_test = { 103 targetName = "ScreenlockUnlockScreenFuzzTest" 104 configFuzzer = "screenlockunlockscreen_fuzzer" 105 source = "screenlockunlockscreen_fuzzer/screenlockunlockscreen_fuzzer.cpp" 106} 107screenlockunlock_test = { 108 targetName = "ScreenlockUnlockFuzzTest" 109 configFuzzer = "screenlockunlock_fuzzer" 110 source = "screenlockunlock_fuzzer/screenlockunlock_fuzzer.cpp" 111} 112screenlocklockscreen_test = { 113 targetName = "ScreenlockLockScreenFuzzTest" 114 configFuzzer = "screenlocklockscreen_fuzzer" 115 source = "screenlocklockscreen_fuzzer/screenlocklockscreen_fuzzer.cpp" 116} 117screenlockisdevicelocked_test = { 118 targetName = "ScreenlockIsDeviceLockedFuzzTest" 119 configFuzzer = "screenlockisdevicelocked_fuzzer" 120 source = "screenlockisdevicelocked_fuzzer/screenlockisdevicelocked_fuzzer.cpp" 121} 122screenlockislockedwithuserid_test = { 123 targetName = "ScreenlockIsLockedWithUserIdFuzzTest" 124 configFuzzer = "screenlockislockedwithuserid_fuzzer" 125 source = "screenlockislockedwithuserid_fuzzer/screenlockislockedwithuserid_fuzzer.cpp" 126} 127screenlockregisterinnerlistener_test = { 128 targetName = "ScreenlockRegisterInnerListenerFuzzTest" 129 configFuzzer = "screenlockregisterinnerlistener_fuzzer" 130 source = "screenlockregisterinnerlistener_fuzzer/screenlockregisterinnerlistener_fuzzer.cpp" 131} 132screenlockunregisterinnerlistener_test = { 133 targetName = "ScreenlockUnregisterInnerListenerFuzzTest" 134 configFuzzer = "screenlockunregisterinnerlistener_fuzzer" 135 source = "screenlockunregisterinnerlistener_fuzzer/screenlockunregisterinnerlistener_fuzzer.cpp" 136} 137 138screenlock_fuzztests = [ 139 screenlockauthmanager_test, 140 screenlockisdisabled_test, 141 screenlocksetdisabled_test, 142 screenlocksetauthstate_test, 143 screenlockgetauthstate_test, 144 screenlockrequeststrong_test, 145 screenlockgetstrongstate_test, 146 screenlockutils_test, 147 screenlockislocked_test, 148 screenlockboundarycode_test, 149 screenlockdump_test, 150 screenlockisscreenlocked_test, 151 screenlockissecuremode_test, 152 screenlocklock_test, 153 screenlockonsystemevent_test, 154 screenlocksendscreenlockevent_test, 155 screenlockunlockscreen_test, 156 screenlockunlock_test, 157 screenlocklockscreen_test, 158 screenlockisdevicelocked_test, 159 screenlockislockedwithuserid_test, 160 screenlockregisterinnerlistener_test, 161 screenlockunregisterinnerlistener_test, 162] 163 164foreach(item, screenlock_fuzztests) { 165 ohos_fuzztest(item.targetName) { 166 module_out_path = "screenlock_mgr/screenlock_mgr" 167 168 fuzz_config_file = "${screenlock_mgr_path}/test/fuzztest/screenlockservice_fuzzer/${item.configFuzzer}" 169 170 include_dirs = [ 171 "${screenlock_mgr_path}/frameworks/js/napi/include", 172 "${screenlock_mgr_path}/services/include", 173 "${screenlock_mgr_path}/test/fuzztest/screenlockservice_fuzzer/common", 174 ] 175 176 cflags = [ 177 "-g", 178 "-O0", 179 "-Wno-unused-variable", 180 "-fno-omit-frame-pointer", 181 ] 182 183 if (screenlock_mgr_so_crop == true) { 184 cflags += [ "-DIS_SO_CROP_H" ] 185 } 186 187 deps = [ 188 "${screenlock_mgr_path}/frameworks/js/napi:screenlock_static", 189 "${screenlock_mgr_path}/interfaces/inner_api:screenlock_client_static", 190 "${screenlock_mgr_path}/services:screenlock_server_static", 191 ] 192 193 external_deps = [ 194 "ability_base:want", 195 "ability_runtime:ability_manager", 196 "access_token:libaccesstoken_sdk", 197 "access_token:libtokenid_sdk", 198 "c_utils:utils", 199 "eventhandler:libeventhandler", 200 "ffrt:libffrt", 201 "hilog:libhilog", 202 "ipc:ipc_single", 203 "napi:ace_napi", 204 "os_account:os_account_innerkits", 205 "preferences:native_preferences", 206 "safwk:system_ability_fwk", 207 "time_service:time_client", 208 "user_auth_framework:userauth_client", 209 "window_manager:libdm", 210 ] 211 212 sources = [ 213 "common/screenlock_service_fuzz_utils.cpp", 214 item.source, 215 ] 216 } 217} 218 219############################################################################### 220group("fuzztest") { 221 testonly = true 222 deps = [] 223 deps += [ 224 # deps file 225 ":ScreenlockAuthManagerFuzzTest", 226 ":ScreenlockBoundaryCodeFuzzTest", 227 ":ScreenlockDumpFuzzTest", 228 ":ScreenlockGetAuthstateFuzzTest", 229 ":ScreenlockGetStrongStateFuzzTest", 230 ":ScreenlockIsDeviceLockedFuzzTest", 231 ":ScreenlockIsLockedWithUserIdFuzzTest", 232 ":ScreenlockIsScreenlockedFuzzTest", 233 ":ScreenlockIsSecureModeFuzzTest", 234 ":ScreenlockIsdisabledFuzzTest", 235 ":ScreenlockIslockedFuzzTest", 236 ":ScreenlockLockFuzzTest", 237 ":ScreenlockLockScreenFuzzTest", 238 ":ScreenlockOnSystemEventFuzzTest", 239 ":ScreenlockRegisterInnerListenerFuzzTest", 240 ":ScreenlockRequestStrongFuzzTest", 241 ":ScreenlockSendScreenlockEventFuzzTest", 242 ":ScreenlockSetAuthstateFuzzTest", 243 ":ScreenlockSetdisabledFuzzTest", 244 ":ScreenlockUnlockFuzzTest", 245 ":ScreenlockUnlockScreenFuzzTest", 246 ":ScreenlockUnregisterInnerListenerFuzzTest", 247 ":ScreenlockUtilsFuzzTest", 248 ] 249} 250############################################################################### 251