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("//base/update/updater/updater_default_cfg.gni") 15import("//build/test.gni") 16 17module_output_path = "updater/updater_test" 18 19config("utest_config") { 20 visibility = [ ":*" ] 21 22 cflags = [ 23 "--coverage", 24 "-fprofile-arcs", 25 "-Wno-implicit-fallthrough", 26 "-Wno-unused-function", 27 ] 28 cflags_cc = [ 29 "-Wno-implicit-fallthrough", 30 "-fexceptions", 31 ] 32 33 ldflags = [ "--coverage" ] 34 35 defines = [ 36 "UPDATER_UT", 37 "BUILD_OHOS", 38 "HDC_DEBUG", 39 "HDC_SUPPORT_FLASHD", 40 "HARMONY_PROJECT", 41 ] 42} 43 44ohos_unittest("updater_unittest") { 45 testonly = true 46 resource_config_file = 47 "//base/update/updater/test/unittest/test_data/ohos_test.xml" 48 module_out_path = module_output_path 49 sources = [ 50 "diffpatch/bzip2_unittest.cpp", 51 "diffpatch/diffpatch_unittest.cpp", 52 "log_test/log_unittest.cpp", 53 "misc_info_test/misc_info_unittest.cpp", 54 "updaterkits_test/updaterkits_unittest.cpp", 55 ] 56 57 sources += [ 58 "$root_out_dir/updater/updater/yacc/lexer.cpp", 59 "$root_out_dir/updater/updater/yacc/parser.cpp", 60 "//base/update/updater/interfaces/kits/misc_info/misc_info.cpp", 61 "//base/update/updater/interfaces/kits/packages/package.cpp", 62 "//base/update/updater/interfaces/kits/updaterkits/updaterkits.cpp", 63 "//base/update/updater/services/diffpatch/bzip2/bzip2_adapter.cpp", 64 "//base/update/updater/services/diffpatch/bzip2/lz4_adapter.cpp", 65 "//base/update/updater/services/diffpatch/bzip2/zip_adapter.cpp", 66 "//base/update/updater/services/diffpatch/diff/blocks_diff.cpp", 67 "//base/update/updater/services/diffpatch/diff/image_diff.cpp", 68 "//base/update/updater/services/diffpatch/diff/update_diff.cpp", 69 "//base/update/updater/services/diffpatch/diffpatch.cpp", 70 "//base/update/updater/services/diffpatch/patch/blocks_patch.cpp", 71 "//base/update/updater/services/diffpatch/patch/image_patch.cpp", 72 "//base/update/updater/services/diffpatch/patch/update_patch.cpp", 73 "//base/update/updater/services/log/log.cpp", 74 "//base/update/updater/services/package/pkg_algorithm/pkg_algo_deflate.cpp", 75 "//base/update/updater/services/package/pkg_algorithm/pkg_algo_digest.cpp", 76 "//base/update/updater/services/package/pkg_algorithm/pkg_algo_lz4.cpp", 77 "//base/update/updater/services/package/pkg_algorithm/pkg_algo_sign.cpp", 78 "//base/update/updater/services/package/pkg_algorithm/pkg_algorithm.cpp", 79 "//base/update/updater/services/package/pkg_manager/pkg_managerImpl.cpp", 80 "//base/update/updater/services/package/pkg_manager/pkg_stream.cpp", 81 "//base/update/updater/services/package/pkg_manager/pkg_utils.cpp", 82 "//base/update/updater/services/package/pkg_package/pkg_gzipfile.cpp", 83 "//base/update/updater/services/package/pkg_package/pkg_lz4file.cpp", 84 "//base/update/updater/services/package/pkg_package/pkg_pkgfile.cpp", 85 "//base/update/updater/services/package/pkg_package/pkg_upgradefile.cpp", 86 "//base/update/updater/services/package/pkg_package/pkg_zipfile.cpp", 87 "//base/update/updater/services/script/script_instruction/script_basicinstruction.cpp", 88 "//base/update/updater/services/script/script_instruction/script_instructionhelper.cpp", 89 "//base/update/updater/services/script/script_instruction/script_loadscript.cpp", 90 "//base/update/updater/services/script/script_instruction/script_registercmd.cpp", 91 "//base/update/updater/services/script/script_instruction/script_updateprocesser.cpp", 92 "//base/update/updater/services/script/script_interpreter/script_context.cpp", 93 "//base/update/updater/services/script/script_interpreter/script_expression.cpp", 94 "//base/update/updater/services/script/script_interpreter/script_function.cpp", 95 "//base/update/updater/services/script/script_interpreter/script_interpreter.cpp", 96 "//base/update/updater/services/script/script_interpreter/script_param.cpp", 97 "//base/update/updater/services/script/script_interpreter/script_scanner.cpp", 98 "//base/update/updater/services/script/script_interpreter/script_statement.cpp", 99 "//base/update/updater/services/script/script_manager/script_managerImpl.cpp", 100 "//base/update/updater/services/script/script_manager/script_utils.cpp", 101 "//base/update/updater/services/script/threadpool/threadpool.cpp", 102 "//base/update/updater/services/updater_utils.cpp", 103 "//base/update/updater/utils/utils.cpp", 104 ] 105 106 include_dirs = [ 107 "//base/update/updater/interfaces/kits/include/", 108 "//base/update/updater/interfaces/kits/include/package", 109 "//base/update/updater/services/include/", 110 "//base/update/updater/utils/include/", 111 "//base/update/updater/utils/json/", 112 "//base/update/updater/services/", 113 "//base/update/updater/services/include/package", 114 "//base/update/updater/services/include/script", 115 "//base/update/updater/services/include/log", 116 "//base/update/updater/services/include/patch", 117 "//base/update/updater/services/include/updater", 118 "//base/update/updater/services/script/script_instruction", 119 "//base/update/updater/services/script/script_interpreter", 120 "//base/update/updater/services/script/script_manager", 121 "//base/update/updater/services/script/threadpool", 122 "$root_out_dir/updater/updater/yacc", 123 "//base/update/updater/services/package/pkg_algorithm", 124 "//base/update/updater/services/package/pkg_manager", 125 "//base/update/updater/services/package/pkg_package", 126 "//base/update/updater/services/package/pkg_verify", 127 "//base/update/updater/services/include/fs_manager", 128 "//base/update/updater/services/fs_manager", 129 "//base/update/updater/services/applypatch", 130 "//base/update/updater/services/diffpatch", 131 "//base/update/updater/services/diffpatch/diff", 132 "//base/update/updater/services/diffpatch/patch", 133 "//base/update/updater/services/diffpatch/bzip2", 134 "//base/update/updater/services/ui", 135 "//base/update/updater/test/unittest", 136 "//developtools/hdc/src/common", 137 "//developtools/hdc/src/host", 138 "//developtools/hdc/src/daemon", 139 "//third_party/zlib", 140 "//third_party/lz4/lib", 141 "//third_party/bounds_checking_function/include", 142 "//foundation/arkui/napi/interfaces/kits", 143 "//third_party/cJSON", 144 "//third_party/curl/include", 145 "//third_party/openssl/include", 146 "//third_party/bzip2", 147 "//third_party/libdrm/include/drm", 148 "//third_party/libdrm", 149 "//third_party/googletest/googletest/include", 150 "//drivers/framework/ability/sbuf/include", 151 "//drivers/framework/include/platform", 152 "//drivers/framework/include/core", 153 "//drivers/framework/include/osal", 154 "//drivers/framework/include/utils", 155 "//drivers/framework/include/config", 156 "//drivers/framework/include", 157 "//drivers/peripheral/input/hal/include", 158 "//drivers/peripheral/input/interfaces/include", 159 "//drivers/peripheral/partitionslot/hal/include", 160 "//third_party/bounds_checking_function/include", 161 ] 162 deps = [ 163 "//base/update/updater/interfaces/kits/misc_info:libmiscinfo", 164 "//base/update/updater/services/applypatch:libapplypatch", 165 "//base/update/updater/services/diffpatch/diff:libdiff", 166 "//base/update/updater/services/diffpatch/patch:libpatch", 167 "//base/update/updater/services/fs_manager:libfsmanager", 168 "//base/update/updater/services/log:libupdaterlog", 169 "//base/update/updater/services/package:libupdaterpackage", 170 "//base/update/updater/services/ui:libui", 171 "//base/update/updater/utils:libutils", 172 "//third_party/bounds_checking_function:libsec_static", 173 "//third_party/bzip2:libbz2", 174 "//third_party/cJSON:cjson", 175 "//third_party/googletest:gmock_main", 176 "//third_party/googletest:gtest_main", 177 "//third_party/libuv:uv", 178 "//third_party/lz4:liblz4_static", 179 "//third_party/openssl:libcrypto_static", 180 "//third_party/openssl:ssl_source", 181 "//third_party/zlib:libz", 182 ] 183 184 deps += [ 185 "//base/update/updater/services/script:gen_yacc", 186 "//base/update/updater/test/unittest:test_update_binary", 187 "//base/update/updater/test/unittest:test_update_binary_abnormal", 188 ] 189 190 external_deps += [ "init:libbegetutil" ] 191 192 public_configs = [ ":utest_config" ] 193 install_enable = true 194 part_name = "updater" 195} 196 197ohos_executable("test_update_binary") { 198 sources = [ "updater_test/test_update_binary.cpp" ] 199 install_enable = true 200 part_name = "updater" 201 subsystem_name = "updater" 202} 203 204ohos_executable("test_update_binary_abnormal") { 205 sources = [ "updater_test/test_update_binary_abnormal.cpp" ] 206 install_enable = true 207 part_name = "updater" 208 subsystem_name = "updater" 209} 210