1# Copyright (c) 2021-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.
13import("//build/lite/config/component/lite_component.gni")
14import("//build/lite/config/test.gni")
15
16if (defined(ohos_lite)) {
17  unittest("AppSpawnLiteTest") {
18    output_extension = "bin"
19    output_dir = "$root_out_dir/test/unittest/startup"
20    ldflags = [
21      "-lstdc++",
22      "-lpthread",
23      "-lm",
24    ]
25
26    include_dirs = [
27      "//base/startup/appspawn/interfaces/innerkits/include",
28      "//base/startup/appspawn/common/",
29      "//base/startup/appspawn/lite/",
30      "//base/startup/appspawn/util/include",
31      "//base/startup/init/interfaces/innerkits/include",
32      "//base/hiviewdfx/hilog_lite/interfaces/native/innerkits/hilog",
33      "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/samgr",
34      "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/registry",
35      "//third_party/bounds_checking_function/include/",
36      "//third_party/cJSON",
37      "${aafwk_lite_path}/interfaces/inner_api/abilitymgr_lite",
38      "//commonlibrary/utils_lite/include",
39    ]
40
41    sources = [
42      "//base/startup/appspawn/common/appspawn_server.c",
43      "//base/startup/appspawn/common/appspawn_trace.cpp",
44      "//base/startup/appspawn/lite/appspawn_message.c",
45      "//base/startup/appspawn/lite/appspawn_process.c",
46      "//base/startup/appspawn/lite/appspawn_service.c",
47      "app_spawn_lite_test.cpp",
48    ]
49
50    defines = [
51      "APPSPAWN_TEST",
52      "OHOS_LITE",
53    ]
54
55    deps = [
56      "${aafwk_lite_path}/frameworks/ability_lite:aafwk_abilitykit_lite",
57      "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
58      "//base/startup/init/interfaces/innerkits:libbegetutil",
59      "//build/lite/config/component/cJSON:cjson_shared",
60      "//foundation/communication/ipc/interfaces/innerkits/c/ipc:ipc_single",
61      "//foundation/distributeddatamgr/kv_store/interfaces/inner_api/kv_store:kv_store",
62      "//foundation/systemabilitymgr/samgr_lite/samgr:samgr",
63      "//third_party/bounds_checking_function:libsec_shared",
64    ]
65
66    deps += [
67      "//foundation/arkui/ace_engine_lite/frameworks:ace_lite",
68      "//foundation/arkui/ui_lite:ui_lite",
69      "//foundation/graphic/graphic_utils_lite:utils_lite",
70      "//foundation/graphic/surface_lite:surface_lite",
71    ]
72
73    if (ohos_kernel_type == "liteos_a") {
74      deps += [ "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared" ]
75    }
76  }
77}
78
79group("unittest") {
80  if (defined(ohos_lite)) {
81    deps = [ ":AppSpawnLiteTest" ]
82  }
83}
84