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