14514f5e3Sopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
24514f5e3Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
34514f5e3Sopenharmony_ci# you may not use this file except in compliance with the License.
44514f5e3Sopenharmony_ci# You may obtain a copy of the License at
54514f5e3Sopenharmony_ci#
64514f5e3Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
74514f5e3Sopenharmony_ci#
84514f5e3Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
94514f5e3Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
104514f5e3Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
114514f5e3Sopenharmony_ci# See the License for the specific language governing permissions and
124514f5e3Sopenharmony_ci# limitations under the License.
134514f5e3Sopenharmony_ci
144514f5e3Sopenharmony_ciimport("//arkcompiler/ets_runtime/test/test_helper.gni")
154514f5e3Sopenharmony_ci
164514f5e3Sopenharmony_cihot_reload_test_list = [
174514f5e3Sopenharmony_ci  # "check_import",
184514f5e3Sopenharmony_ci  # "same_methodname",
194514f5e3Sopenharmony_ci  "class_inheritance",
204514f5e3Sopenharmony_ci  "class_mem_func",
214514f5e3Sopenharmony_ci  "class_same_mem_func",
224514f5e3Sopenharmony_ci  "class_mem_var",
234514f5e3Sopenharmony_ci  "class_name",
244514f5e3Sopenharmony_ci  "closure",
254514f5e3Sopenharmony_ci  "global_func",
264514f5e3Sopenharmony_ci  "global_var",
274514f5e3Sopenharmony_ci  "import_export",
284514f5e3Sopenharmony_ci  "lazy_import",
294514f5e3Sopenharmony_ci  "print_string",
304514f5e3Sopenharmony_ci  "record_not_same",
314514f5e3Sopenharmony_ci  "module_var",
324514f5e3Sopenharmony_ci  "module_func",
334514f5e3Sopenharmony_ci  "module_class",
344514f5e3Sopenharmony_ci  "module_class_inheritance",
354514f5e3Sopenharmony_ci]
364514f5e3Sopenharmony_ci
374514f5e3Sopenharmony_cihot_reload_cold_patch_test_list = []
384514f5e3Sopenharmony_ci
394514f5e3Sopenharmony_ciif (!is_debug) {
404514f5e3Sopenharmony_ci  hot_reload_cold_patch_test_list += [
414514f5e3Sopenharmony_ci    "cold_classmemfunc",
424514f5e3Sopenharmony_ci    "cold_closure",
434514f5e3Sopenharmony_ci    "cold_printstring",
444514f5e3Sopenharmony_ci    "cold_classmemvar",
454514f5e3Sopenharmony_ci  ]
464514f5e3Sopenharmony_ci
474514f5e3Sopenharmony_ci  hot_reload_test_list += [
484514f5e3Sopenharmony_ci    "multi_classconstpool",
494514f5e3Sopenharmony_ci    "multi_closureconstpool",
504514f5e3Sopenharmony_ci    "multi_constructorconstpool",
514514f5e3Sopenharmony_ci    "multi_funccallconstpool",
524514f5e3Sopenharmony_ci    "multi_funcconstpool",
534514f5e3Sopenharmony_ci    "multiconstpool_multifunc",
544514f5e3Sopenharmony_ci  ]
554514f5e3Sopenharmony_ci}
564514f5e3Sopenharmony_ci
574514f5e3Sopenharmony_cihot_patch_test_list = [
584514f5e3Sopenharmony_ci  "add_callfunction",
594514f5e3Sopenharmony_ci  # "external_method",
604514f5e3Sopenharmony_ci]
614514f5e3Sopenharmony_ci
624514f5e3Sopenharmony_cihost_quickfix_test_action("multi_patch") {
634514f5e3Sopenharmony_ci  extra_patches = [
644514f5e3Sopenharmony_ci    "patch1",
654514f5e3Sopenharmony_ci    "patch2",
664514f5e3Sopenharmony_ci  ]
674514f5e3Sopenharmony_ci  entry_point = "--entry-point=base"
684514f5e3Sopenharmony_ci}
694514f5e3Sopenharmony_ci
704514f5e3Sopenharmony_ciforeach(testcase, hot_reload_test_list) {
714514f5e3Sopenharmony_ci  host_quickfix_test_action("${testcase}") {
724514f5e3Sopenharmony_ci    entry_point = "--entry-point=base"
734514f5e3Sopenharmony_ci    if (!is_debug) {
744514f5e3Sopenharmony_ci      is_gen_js_by_script = true
754514f5e3Sopenharmony_ci    }
764514f5e3Sopenharmony_ci  }
774514f5e3Sopenharmony_ci}
784514f5e3Sopenharmony_ci
794514f5e3Sopenharmony_ciforeach(testcase, hot_patch_test_list) {
804514f5e3Sopenharmony_ci  host_quickfix_test_action("${testcase}") {
814514f5e3Sopenharmony_ci    entry_point = "--entry-point=base"
824514f5e3Sopenharmony_ci    is_hotpatch = true
834514f5e3Sopenharmony_ci  }
844514f5e3Sopenharmony_ci}
854514f5e3Sopenharmony_ci
864514f5e3Sopenharmony_ciforeach(testcase, hot_reload_cold_patch_test_list) {
874514f5e3Sopenharmony_ci  host_quickfix_test_action("${testcase}") {
884514f5e3Sopenharmony_ci    entry_point = "--entry-point=base:coldpatch"
894514f5e3Sopenharmony_ci  }
904514f5e3Sopenharmony_ci}
914514f5e3Sopenharmony_ci
924514f5e3Sopenharmony_cigroup("ark_quickfix_test") {
934514f5e3Sopenharmony_ci  testonly = true
944514f5e3Sopenharmony_ci
954514f5e3Sopenharmony_ci  deps = []
964514f5e3Sopenharmony_ci  foreach(testcase, hot_reload_test_list) {
974514f5e3Sopenharmony_ci    deps += [ ":${testcase}QuickfixAction" ]
984514f5e3Sopenharmony_ci  }
994514f5e3Sopenharmony_ci
1004514f5e3Sopenharmony_ci  foreach(testcase, hot_patch_test_list) {
1014514f5e3Sopenharmony_ci    deps += [ ":${testcase}QuickfixAction" ]
1024514f5e3Sopenharmony_ci  }
1034514f5e3Sopenharmony_ci
1044514f5e3Sopenharmony_ci  foreach(testcase, hot_reload_cold_patch_test_list) {
1054514f5e3Sopenharmony_ci    deps += [ ":${testcase}QuickfixAction" ]
1064514f5e3Sopenharmony_ci  }
1074514f5e3Sopenharmony_ci
1084514f5e3Sopenharmony_ci  deps += [ ":multi_patchQuickfixAction" ]
1094514f5e3Sopenharmony_ci}
110