1# Copyright (c) 2022-2024 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/test.gni") 15import("//foundation/arkui/ace_engine/test/unittest/ace_unittest.gni") 16 17config("config_svg_parse_test") { 18 visibility = [ ":*" ] 19 include_dirs = [ 20 "//commonlibrary/c_utils/base/include", 21 "//foundation/graphic/graphic_2d/rosen/modules", 22 "//foundation/graphic/graphic_2d/rosen/modules/render_service_client", 23 "//foundation/graphic/graphic_2d/rosen/modules/render_service_client/core", 24 "//foundation/graphic/graphic_2d/rosen/modules/render_service_base", 25 "//foundation/graphic/graphic_2d/rosen/modules/render_service_base/include", 26 "//foundation/graphic/graphic_2d/rosen/modules/platform/image_native", 27 "//foundation/graphic/graphic_2d/rosen/modules/2d_engine", 28 "//foundation/graphic/graphic_2d/rosen/modules/2d_engine/rosen_text/export/rosen_text", 29 "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/include", 30 "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/src", 31 "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/src/drawing/engine_adapter", 32 "//foundation/graphic/graphic_2d/rosen/modules/render_service_base/include", 33 "//third_party/skia", 34 "$ace_root", 35 "$ace_root/frameworks", 36 ] 37 if (enable_graphic_text_gine) { 38 include_dirs += [ "//foundation/graphic/graphic_2d/rosen/modules/2d_engine/rosen_text/export" ] 39 } else { 40 include_dirs += 41 [ "//foundation/graphic/graphic_2d/rosen/modules/2d_engine/rosen_text" ] 42 } 43} 44 45ohos_unittest("parse_test_ng") { 46 module_out_path = svg_test_output_path 47 sources = [ 48 "$ace_root/frameworks/base/base64/base64_util.cpp", 49 "$ace_root/frameworks/bridge/common/dom/dom_type.cpp", 50 "$ace_root/frameworks/bridge/common/utils/utils.cpp", 51 "$ace_root/frameworks/bridge/js_frontend/engine/common/js_constants.cpp", 52 "$ace_root/frameworks/core/animation/svg_animate.cpp", 53 "$ace_root/frameworks/core/components/declaration/common/declaration.cpp", 54 "$ace_root/frameworks/core/components/declaration/common/declaration_constants.cpp", 55 "$ace_root/frameworks/core/components/declaration/common/event.cpp", 56 "$ace_root/frameworks/core/components/declaration/svg/svg_animate_declaration.cpp", 57 "$ace_root/frameworks/core/components/declaration/svg/svg_base_declaration.cpp", 58 "$ace_root/frameworks/core/components/declaration/svg/svg_circle_declaration.cpp", 59 "$ace_root/frameworks/core/components/declaration/svg/svg_declaration.cpp", 60 "$ace_root/frameworks/core/components/declaration/svg/svg_ellipse_declaration.cpp", 61 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_blend_declaration.cpp", 62 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_colormatrix_declaration.cpp", 63 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_component_transfer_declaration.cpp", 64 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_composite_declaration.cpp", 65 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_declaration.cpp", 66 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_flood_declaration.cpp", 67 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_func_declaration.cpp", 68 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_gaussianblur_declaration.cpp", 69 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_merge_declaration.cpp", 70 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_offset_declaration.cpp", 71 "$ace_root/frameworks/core/components/declaration/svg/svg_filter_declaration.cpp", 72 "$ace_root/frameworks/core/components/declaration/svg/svg_gradient_declaration.cpp", 73 "$ace_root/frameworks/core/components/declaration/svg/svg_image_declaration.cpp", 74 "$ace_root/frameworks/core/components/declaration/svg/svg_line_declaration.cpp", 75 "$ace_root/frameworks/core/components/declaration/svg/svg_mask_declaration.cpp", 76 "$ace_root/frameworks/core/components/declaration/svg/svg_path_declaration.cpp", 77 "$ace_root/frameworks/core/components/declaration/svg/svg_pattern_declaration.cpp", 78 "$ace_root/frameworks/core/components/declaration/svg/svg_polygon_declaration.cpp", 79 "$ace_root/frameworks/core/components/declaration/svg/svg_rect_declaration.cpp", 80 "$ace_root/frameworks/core/components/declaration/svg/svg_stop_declaration.cpp", 81 "$ace_root/frameworks/core/components/declaration/svg/svg_text_declaration.cpp", 82 "$ace_root/frameworks/core/components/declaration/svg/svg_text_path_declaration.cpp", 83 "$ace_root/frameworks/core/components/svg/svg_transform.cpp", 84 "$ace_root/frameworks/core/components_ng/pattern/overlay/sheet_manager.cpp", 85 "$ace_root/frameworks/core/components_ng/svg/parse/svg_animation.cpp", 86 "$ace_root/frameworks/core/components_ng/svg/parse/svg_attributes_parser.cpp", 87 "$ace_root/frameworks/core/components_ng/svg/parse/svg_circle.cpp", 88 "$ace_root/frameworks/core/components_ng/svg/parse/svg_clip_path.cpp", 89 "$ace_root/frameworks/core/components_ng/svg/parse/svg_ellipse.cpp", 90 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe.cpp", 91 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_blend.cpp", 92 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_color_matrix.cpp", 93 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_composite.cpp", 94 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_flood.cpp", 95 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_gaussian_blur.cpp", 96 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_offset.cpp", 97 "$ace_root/frameworks/core/components_ng/svg/parse/svg_filter.cpp", 98 "$ace_root/frameworks/core/components_ng/svg/parse/svg_g.cpp", 99 "$ace_root/frameworks/core/components_ng/svg/parse/svg_gradient.cpp", 100 "$ace_root/frameworks/core/components_ng/svg/parse/svg_graphic.cpp", 101 "$ace_root/frameworks/core/components_ng/svg/parse/svg_image.cpp", 102 "$ace_root/frameworks/core/components_ng/svg/parse/svg_line.cpp", 103 "$ace_root/frameworks/core/components_ng/svg/parse/svg_mask.cpp", 104 "$ace_root/frameworks/core/components_ng/svg/parse/svg_node.cpp", 105 "$ace_root/frameworks/core/components_ng/svg/parse/svg_path.cpp", 106 "$ace_root/frameworks/core/components_ng/svg/parse/svg_pattern.cpp", 107 "$ace_root/frameworks/core/components_ng/svg/parse/svg_polygon.cpp", 108 "$ace_root/frameworks/core/components_ng/svg/parse/svg_rect.cpp", 109 "$ace_root/frameworks/core/components_ng/svg/parse/svg_stop.cpp", 110 "$ace_root/frameworks/core/components_ng/svg/parse/svg_style.cpp", 111 "$ace_root/frameworks/core/components_ng/svg/parse/svg_svg.cpp", 112 "$ace_root/frameworks/core/components_ng/svg/parse/svg_use.cpp", 113 "$ace_root/frameworks/core/components_ng/svg/svg_context.cpp", 114 "$ace_root/frameworks/core/components_ng/svg/svg_dom.cpp", 115 "$ace_root/test/mock/adapter/mock_drawing_color_filter_ohos.cpp", 116 "$ace_root/test/mock/core/svg/mock_image_painter_utils.cpp", 117 "$ace_root/test/mock/core/svg/mock_rosen_svg_painter.cpp", 118 "$ace_root/test/mock/core/svg/mock_shared_transition_effect.cpp", 119 "$ace_root/test/mock/core/svg/mock_svg_fit_convertor.cpp", 120 "$ace_root/test/mock/core/svg/mock_svg_utils.cpp", 121 "parse_test_ng.cpp", 122 "parse_testtwo_ng.cpp", 123 ] 124 defines = [ "USE_ROSEN_DRAWING" ] 125 if (ace_use_rosen_drawing) { 126 defines += [ 127 "ACE_ENABLE_GPU", 128 "NEW_SKIA", 129 ] 130 include_dirs = [ "//third_party/skia" ] 131 } 132 133 configs = [ 134 ":config_svg_parse_test", 135 "$ace_root/test/unittest:ace_unittest_config", 136 ] 137 138 external_deps = [ 139 "bounds_checking_function:libsec_static", 140 "eventhandler:libeventhandler", 141 "graphic_2d:librender_service_base", 142 "graphic_2d:librender_service_client", 143 "graphic_2d:rosen_text", 144 ] 145 146 deps = [ 147 "$ace_root/test/unittest:ace_base", 148 "$ace_root/test/unittest:ace_components_base", 149 "$ace_root/test/unittest:ace_components_mock", 150 "$ace_root/test/unittest:ace_components_render", 151 "$ace_root/test/unittest:ace_core_animation", 152 "$ace_root/test/unittest:ace_core_extra", 153 "//third_party/googletest:gmock", 154 "//third_party/googletest:gtest_main", 155 ] 156 157 if (ability_runtime_graphics) { 158 external_deps += [ 159 "ability_runtime:runtime", 160 "image_framework:image_native", 161 "window_manager:libdm", 162 ] 163 } 164} 165 166ohos_unittest("svg_dom_test_ng") { 167 module_out_path = svg_test_output_path 168 169 sources = [ 170 "$ace_root/frameworks/bridge/common/dom/dom_type.cpp", 171 "$ace_root/frameworks/bridge/common/utils/utils.cpp", 172 "$ace_root/frameworks/bridge/js_frontend/engine/common/js_constants.cpp", 173 "$ace_root/frameworks/core/animation/svg_animate.cpp", 174 "$ace_root/frameworks/core/components/declaration/common/declaration.cpp", 175 "$ace_root/frameworks/core/components/declaration/common/declaration_constants.cpp", 176 "$ace_root/frameworks/core/components/declaration/common/event.cpp", 177 "$ace_root/frameworks/core/components/declaration/svg/svg_animate_declaration.cpp", 178 "$ace_root/frameworks/core/components/declaration/svg/svg_base_declaration.cpp", 179 "$ace_root/frameworks/core/components/declaration/svg/svg_circle_declaration.cpp", 180 "$ace_root/frameworks/core/components/declaration/svg/svg_declaration.cpp", 181 "$ace_root/frameworks/core/components/declaration/svg/svg_ellipse_declaration.cpp", 182 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_blend_declaration.cpp", 183 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_colormatrix_declaration.cpp", 184 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_component_transfer_declaration.cpp", 185 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_composite_declaration.cpp", 186 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_declaration.cpp", 187 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_flood_declaration.cpp", 188 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_func_declaration.cpp", 189 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_gaussianblur_declaration.cpp", 190 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_merge_declaration.cpp", 191 "$ace_root/frameworks/core/components/declaration/svg/svg_fe_offset_declaration.cpp", 192 "$ace_root/frameworks/core/components/declaration/svg/svg_filter_declaration.cpp", 193 "$ace_root/frameworks/core/components/declaration/svg/svg_gradient_declaration.cpp", 194 "$ace_root/frameworks/core/components/declaration/svg/svg_image_declaration.cpp", 195 "$ace_root/frameworks/core/components/declaration/svg/svg_line_declaration.cpp", 196 "$ace_root/frameworks/core/components/declaration/svg/svg_mask_declaration.cpp", 197 "$ace_root/frameworks/core/components/declaration/svg/svg_path_declaration.cpp", 198 "$ace_root/frameworks/core/components/declaration/svg/svg_pattern_declaration.cpp", 199 "$ace_root/frameworks/core/components/declaration/svg/svg_polygon_declaration.cpp", 200 "$ace_root/frameworks/core/components/declaration/svg/svg_rect_declaration.cpp", 201 "$ace_root/frameworks/core/components/declaration/svg/svg_stop_declaration.cpp", 202 "$ace_root/frameworks/core/components/declaration/svg/svg_text_declaration.cpp", 203 "$ace_root/frameworks/core/components/declaration/svg/svg_text_path_declaration.cpp", 204 "$ace_root/frameworks/core/components/svg/svg_transform.cpp", 205 "$ace_root/frameworks/core/components_ng/pattern/overlay/sheet_manager.cpp", 206 "$ace_root/frameworks/core/components_ng/svg/parse/svg_animation.cpp", 207 "$ace_root/frameworks/core/components_ng/svg/parse/svg_attributes_parser.cpp", 208 "$ace_root/frameworks/core/components_ng/svg/parse/svg_circle.cpp", 209 "$ace_root/frameworks/core/components_ng/svg/parse/svg_clip_path.cpp", 210 "$ace_root/frameworks/core/components_ng/svg/parse/svg_ellipse.cpp", 211 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe.cpp", 212 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_blend.cpp", 213 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_color_matrix.cpp", 214 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_composite.cpp", 215 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_flood.cpp", 216 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_gaussian_blur.cpp", 217 "$ace_root/frameworks/core/components_ng/svg/parse/svg_fe_offset.cpp", 218 "$ace_root/frameworks/core/components_ng/svg/parse/svg_filter.cpp", 219 "$ace_root/frameworks/core/components_ng/svg/parse/svg_g.cpp", 220 "$ace_root/frameworks/core/components_ng/svg/parse/svg_gradient.cpp", 221 "$ace_root/frameworks/core/components_ng/svg/parse/svg_graphic.cpp", 222 "$ace_root/frameworks/core/components_ng/svg/parse/svg_image.cpp", 223 "$ace_root/frameworks/core/components_ng/svg/parse/svg_line.cpp", 224 "$ace_root/frameworks/core/components_ng/svg/parse/svg_mask.cpp", 225 "$ace_root/frameworks/core/components_ng/svg/parse/svg_node.cpp", 226 "$ace_root/frameworks/core/components_ng/svg/parse/svg_path.cpp", 227 "$ace_root/frameworks/core/components_ng/svg/parse/svg_pattern.cpp", 228 "$ace_root/frameworks/core/components_ng/svg/parse/svg_polygon.cpp", 229 "$ace_root/frameworks/core/components_ng/svg/parse/svg_rect.cpp", 230 "$ace_root/frameworks/core/components_ng/svg/parse/svg_stop.cpp", 231 "$ace_root/frameworks/core/components_ng/svg/parse/svg_style.cpp", 232 "$ace_root/frameworks/core/components_ng/svg/parse/svg_svg.cpp", 233 "$ace_root/frameworks/core/components_ng/svg/parse/svg_use.cpp", 234 "$ace_root/frameworks/core/components_ng/svg/svg_context.cpp", 235 "$ace_root/frameworks/core/components_ng/svg/svg_dom.cpp", 236 "$ace_root/frameworks/core/components_ng/svg/svg_utils.cpp", 237 "$ace_root/test/mock/adapter/mock_drawing_color_filter_ohos.cpp", 238 "$ace_root/test/mock/core/svg/mock_image_painter_utils.cpp", 239 "$ace_root/test/mock/core/svg/mock_rosen_svg_painter.cpp", 240 "$ace_root/test/mock/core/svg/mock_shared_transition_effect.cpp", 241 "$ace_root/test/mock/core/svg/mock_svg_fit_convertor.cpp", 242 "svg_dom_test_ng.cpp", 243 ] 244 245 defines = [ "USE_ROSEN_DRAWING" ] 246 247 configs = [ 248 ":config_svg_parse_test", 249 "$ace_root/test/unittest:ace_unittest_config", 250 ] 251 252 external_deps = [ 253 "bounds_checking_function:libsec_static", 254 "eventhandler:libeventhandler", 255 "graphic_2d:librender_service_base", 256 "graphic_2d:librender_service_client", 257 "graphic_2d:rosen_text", 258 ] 259 260 deps = [ 261 "$ace_root/test/unittest:ace_base", 262 "$ace_root/test/unittest:ace_components_base", 263 "$ace_root/test/unittest:ace_components_mock", 264 "$ace_root/test/unittest:ace_components_render", 265 "$ace_root/test/unittest:ace_core_animation", 266 "$ace_root/test/unittest:ace_core_extra", 267 "//third_party/googletest:gmock", 268 "//third_party/googletest:gtest_main", 269 ] 270} 271 272group("core_svg_unittest") { 273 testonly = true 274 deps = [ 275 ":parse_test_ng", 276 ":svg_dom_test_ng", 277 ] 278} 279