1# Copyright (c) 2021-2023 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("../../../../access_token.gni")
16
17ohos_unittest("libnativetoken_test") {
18  subsystem_name = "security"
19  part_name = "access_token"
20  module_out_path = part_name + "/" + part_name
21  sanitize = {
22    cfi = true
23    cfi_cross_dso = true
24    debug = false
25  }
26  branch_protector_ret = "pac_ret"
27
28  include_dirs = [ "../include" ]
29
30  sources = [
31    "unittest/src/nativetoken_kit_test.cpp",
32    "unittest/src/nativetoken_oper_test.cpp",
33  ]
34
35  configs = [ "${access_token_path}/config:coverage_flags" ]
36
37  deps = [ "../:libnativetoken_shared" ]
38  external_deps = [
39    "bounds_checking_function:libsec_shared",
40    "cJSON:cjson_static",
41    "googletest:gmock",
42    "googletest:gtest",
43  ]
44}
45
46ohos_unittest("libnativetoken_mock_test") {
47  subsystem_name = "security"
48  part_name = "access_token"
49  module_out_path = part_name + "/" + part_name
50  sanitize = {
51    cfi = true
52    cfi_cross_dso = true
53    debug = false
54  }
55  branch_protector_ret = "pac_ret"
56
57  include_dirs = [
58    "../include",
59    "mock/include/",
60  ]
61
62  sources = [
63    "../src/nativetoken.c",
64    "../src/nativetoken_json_oper.c",
65    "../src/nativetoken_klog.c",
66    "mock/src/cJSON.c",
67    "unittest/mock/nativetoken_oper_test.cpp",
68  ]
69
70  configs = [ "${access_token_path}/config:coverage_flags" ]
71
72  external_deps = [
73    "bounds_checking_function:libsec_shared",
74    "googletest:gmock",
75    "googletest:gtest",
76    "hilog:libhilog",
77  ]
78}
79
80group("unittest") {
81  testonly = true
82  deps = [
83    ":libnativetoken_mock_test",
84    ":libnativetoken_test",
85  ]
86}
87