1fb299fa2Sopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd. 2fb299fa2Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3fb299fa2Sopenharmony_ci# you may not use this file except in compliance with the License. 4fb299fa2Sopenharmony_ci# You may obtain a copy of the License at 5fb299fa2Sopenharmony_ci# 6fb299fa2Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7fb299fa2Sopenharmony_ci# 8fb299fa2Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9fb299fa2Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10fb299fa2Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11fb299fa2Sopenharmony_ci# See the License for the specific language governing permissions and 12fb299fa2Sopenharmony_ci# limitations under the License. 13fb299fa2Sopenharmony_ci 14fb299fa2Sopenharmony_ciimport("//base/update/updater/updater_default_cfg.gni") 15fb299fa2Sopenharmony_ciimport("//build/test.gni") 16fb299fa2Sopenharmony_ci 17fb299fa2Sopenharmony_ciMODULE_OUTPUT_PATH = "updater/updater_test" 18fb299fa2Sopenharmony_ciupdater_path = rebase_path("${updater_absolutely_path}", ".") 19fb299fa2Sopenharmony_ci 20fb299fa2Sopenharmony_ciohos_unittest("script_unittest") { 21fb299fa2Sopenharmony_ci testonly = true 22fb299fa2Sopenharmony_ci resource_config_file = "${updater_path}/test/unittest/test_data/ohos_test.xml" 23fb299fa2Sopenharmony_ci module_out_path = MODULE_OUTPUT_PATH 24fb299fa2Sopenharmony_ci sources = [ 25fb299fa2Sopenharmony_ci "script_instruction/basic_instruction_unittest.cpp", 26fb299fa2Sopenharmony_ci "script_instruction/script_instructionhelper_unittest.cpp", 27fb299fa2Sopenharmony_ci "script_instruction/script_loadscript_unittest.cpp", 28fb299fa2Sopenharmony_ci "script_instruction/script_registercmd_unittest.cpp", 29fb299fa2Sopenharmony_ci "script_instruction/script_updateprocesser_unittest.cpp", 30fb299fa2Sopenharmony_ci "script_interpreter_unittest.cpp", 31fb299fa2Sopenharmony_ci "script_unittest.cpp", 32fb299fa2Sopenharmony_ci "threadpool_unittest.cpp", 33fb299fa2Sopenharmony_ci ] 34fb299fa2Sopenharmony_ci sources += [ 35fb299fa2Sopenharmony_ci "$root_out_dir/updater/updater/yacc/lexer.cpp", 36fb299fa2Sopenharmony_ci "$root_out_dir/updater/updater/yacc/parser.cpp", 37fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction/script_basicinstruction.cpp", 38fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction/script_instructionhelper.cpp", 39fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction/script_loadscript.cpp", 40fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction/script_registercmd.cpp", 41fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction/script_updateprocesser.cpp", 42fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_context.cpp", 43fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_expression.cpp", 44fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_function.cpp", 45fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_interpreter.cpp", 46fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_param.cpp", 47fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_scanner.cpp", 48fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter/script_statement.cpp", 49fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_manager/script_managerImpl.cpp", 50fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_manager/script_utils.cpp", 51fb299fa2Sopenharmony_ci "${updater_path}/services/script/threadpool/threadpool.cpp", 52fb299fa2Sopenharmony_ci "${updater_path}/utils/utils.cpp", 53fb299fa2Sopenharmony_ci ] 54fb299fa2Sopenharmony_ci include_dirs = [ 55fb299fa2Sopenharmony_ci "${updater_path}/interfaces/kits/include", 56fb299fa2Sopenharmony_ci "${updater_path}/services/common", 57fb299fa2Sopenharmony_ci "${updater_path}/services/include/package", 58fb299fa2Sopenharmony_ci "${updater_path}/services/include/script", 59fb299fa2Sopenharmony_ci "${updater_path}/services/include/log", 60fb299fa2Sopenharmony_ci "${updater_path}/services/include/updater", 61fb299fa2Sopenharmony_ci "${updater_path}/services/package/pkg_algorithm", 62fb299fa2Sopenharmony_ci "${updater_path}/services/package/pkg_manager", 63fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction", 64fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_interpreter", 65fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_manager", 66fb299fa2Sopenharmony_ci "${updater_path}/services/script/threadpool", 67fb299fa2Sopenharmony_ci "$root_out_dir/updater/updater/yacc", 68fb299fa2Sopenharmony_ci "${updater_path}/test/unittest", 69fb299fa2Sopenharmony_ci "${updater_path}/utils/include", 70fb299fa2Sopenharmony_ci ] 71fb299fa2Sopenharmony_ci 72fb299fa2Sopenharmony_ci deps = [ 73fb299fa2Sopenharmony_ci "${updater_path}/interfaces/kits/packages:libpackageExt", 74fb299fa2Sopenharmony_ci "${updater_path}/services/log:libupdaterlog", 75fb299fa2Sopenharmony_ci "${updater_path}/services/package:libupdaterpackage", 76fb299fa2Sopenharmony_ci "${updater_path}/services/script:gen_yacc", 77fb299fa2Sopenharmony_ci "${updater_path}/utils:libutils", 78fb299fa2Sopenharmony_ci ] 79fb299fa2Sopenharmony_ci if (updater_cfg_file != "") { 80fb299fa2Sopenharmony_ci deps += [ 81fb299fa2Sopenharmony_ci "${updater_path}/test/unittest/script:user_instruction", 82fb299fa2Sopenharmony_ci "${updater_path}/test/unittest/script:user_instruction_invalid", 83fb299fa2Sopenharmony_ci ] 84fb299fa2Sopenharmony_ci } 85fb299fa2Sopenharmony_ci configs = [ "${updater_path}/test/unittest:utest_config" ] 86fb299fa2Sopenharmony_ci external_deps = [ 87fb299fa2Sopenharmony_ci "bounds_checking_function:libsec_static", 88fb299fa2Sopenharmony_ci "bzip2:libbz2", 89fb299fa2Sopenharmony_ci "c_utils:utils", 90fb299fa2Sopenharmony_ci "googletest:gmock_main", 91fb299fa2Sopenharmony_ci "googletest:gtest_main", 92fb299fa2Sopenharmony_ci "hilog:libhilog", 93fb299fa2Sopenharmony_ci "init:libbegetutil_static", 94fb299fa2Sopenharmony_ci "init:libfsmanager_static_real", 95fb299fa2Sopenharmony_ci "lz4:liblz4_static", 96fb299fa2Sopenharmony_ci "openssl:libcrypto_shared", 97fb299fa2Sopenharmony_ci "openssl:libssl_shared", 98fb299fa2Sopenharmony_ci "zlib:libz", 99fb299fa2Sopenharmony_ci ] 100fb299fa2Sopenharmony_ci install_enable = true 101fb299fa2Sopenharmony_ci part_name = "updater" 102fb299fa2Sopenharmony_ci} 103fb299fa2Sopenharmony_ci 104fb299fa2Sopenharmony_ciohos_shared_library("user_instruction") { 105fb299fa2Sopenharmony_ci sources = [ "script_instruction/user_instruction/user_instruction.cpp" ] 106fb299fa2Sopenharmony_ci output_extension = "so" 107fb299fa2Sopenharmony_ci ldflags = [ "-rdynamic" ] 108fb299fa2Sopenharmony_ci include_dirs = [ 109fb299fa2Sopenharmony_ci "${updater_path}/interfaces/kits/include/", 110fb299fa2Sopenharmony_ci "${updater_path}/services/common", 111fb299fa2Sopenharmony_ci "${updater_path}/services/include", 112fb299fa2Sopenharmony_ci "${updater_path}/services/include/package", 113fb299fa2Sopenharmony_ci "${updater_path}/services/include/script", 114fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction", 115fb299fa2Sopenharmony_ci "${updater_path}/utils/include", 116fb299fa2Sopenharmony_ci ] 117fb299fa2Sopenharmony_ci install_enable = true 118fb299fa2Sopenharmony_ci subsystem_name = "updater" 119fb299fa2Sopenharmony_ci part_name = "updater" 120fb299fa2Sopenharmony_ci} 121fb299fa2Sopenharmony_ci 122fb299fa2Sopenharmony_ciohos_shared_library("user_instruction_invalid") { 123fb299fa2Sopenharmony_ci sources = 124fb299fa2Sopenharmony_ci [ "script_instruction/user_instruction/user_instruction_invalid.cpp" ] 125fb299fa2Sopenharmony_ci output_extension = "so" 126fb299fa2Sopenharmony_ci ldflags = [ "-rdynamic" ] 127fb299fa2Sopenharmony_ci include_dirs = [ 128fb299fa2Sopenharmony_ci "${updater_path}/interfaces/kits/include/", 129fb299fa2Sopenharmony_ci "${updater_path}/services/common", 130fb299fa2Sopenharmony_ci "${updater_path}/services/include", 131fb299fa2Sopenharmony_ci "${updater_path}/services/include/package", 132fb299fa2Sopenharmony_ci "${updater_path}/services/include/script", 133fb299fa2Sopenharmony_ci "${updater_path}/services/script/script_instruction", 134fb299fa2Sopenharmony_ci "${updater_path}/utils/include", 135fb299fa2Sopenharmony_ci ] 136fb299fa2Sopenharmony_ci install_enable = true 137fb299fa2Sopenharmony_ci subsystem_name = "updater" 138fb299fa2Sopenharmony_ci part_name = "updater" 139fb299fa2Sopenharmony_ci} 140