112e714ceSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
212e714ceSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
312e714ceSopenharmony_ci# you may not use this file except in compliance with the License.
412e714ceSopenharmony_ci# You may obtain a copy of the License at
512e714ceSopenharmony_ci#
612e714ceSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
712e714ceSopenharmony_ci#
812e714ceSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
912e714ceSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1012e714ceSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1112e714ceSopenharmony_ci# See the License for the specific language governing permissions and
1212e714ceSopenharmony_ci# limitations under the License.
1312e714ceSopenharmony_ci
1412e714ceSopenharmony_ciimport("//build/test.gni")
1512e714ceSopenharmony_ci
1612e714ceSopenharmony_cimodule_output_path = "neural_network_runtime/"
1712e714ceSopenharmony_ci
1812e714ceSopenharmony_ciconfig("system_test_config") {
1912e714ceSopenharmony_ci  visibility = [ ":*" ]
2012e714ceSopenharmony_ci
2112e714ceSopenharmony_ci  include_dirs = [
2212e714ceSopenharmony_ci    "../..",
2312e714ceSopenharmony_ci    "../../frameworks/native/neural_network_runtime",
2412e714ceSopenharmony_ci    "../../frameworks/native/neural_network_core",
2512e714ceSopenharmony_ci    "//third_party/mindspore/mindspore-src/source/mindspore/lite/mindir/include",
2612e714ceSopenharmony_ci  ]
2712e714ceSopenharmony_ci
2812e714ceSopenharmony_ci  cflags = [
2912e714ceSopenharmony_ci    "-Wall",
3012e714ceSopenharmony_ci    "-Wextra",
3112e714ceSopenharmony_ci    "-Werror",
3212e714ceSopenharmony_ci  ]
3312e714ceSopenharmony_ci}
3412e714ceSopenharmony_ci
3512e714ceSopenharmony_ciohos_systemtest("DeviceTest") {
3612e714ceSopenharmony_ci  module_out_path = module_output_path
3712e714ceSopenharmony_ci  sources = [ "./device_test.cpp" ]
3812e714ceSopenharmony_ci
3912e714ceSopenharmony_ci  configs = [ ":system_test_config" ]
4012e714ceSopenharmony_ci
4112e714ceSopenharmony_ci  deps = [
4212e714ceSopenharmony_ci    "//foundation/ai/neural_network_runtime/frameworks:libneural_network_runtime",
4312e714ceSopenharmony_ci    "//third_party/googletest:gtest_main",
4412e714ceSopenharmony_ci  ]
4512e714ceSopenharmony_ci
4612e714ceSopenharmony_ci  external_deps = [
4712e714ceSopenharmony_ci    "c_utils:utils",
4812e714ceSopenharmony_ci    "drivers_interface_nnrt:libnnrt_proxy_1.0",
4912e714ceSopenharmony_ci    "hdf_core:libhdf_utils",
5012e714ceSopenharmony_ci    "hilog:libhilog",
5112e714ceSopenharmony_ci    "hitrace:hitrace_meter",
5212e714ceSopenharmony_ci  ]
5312e714ceSopenharmony_ci}
5412e714ceSopenharmony_ci
5512e714ceSopenharmony_ciohos_systemtest("End2EndTest") {
5612e714ceSopenharmony_ci  module_out_path = module_output_path
5712e714ceSopenharmony_ci  sources = [
5812e714ceSopenharmony_ci    "./common/nnrt_test.cpp",
5912e714ceSopenharmony_ci    "./end_to_end_test.cpp",
6012e714ceSopenharmony_ci  ]
6112e714ceSopenharmony_ci
6212e714ceSopenharmony_ci  configs = [ ":system_test_config" ]
6312e714ceSopenharmony_ci
6412e714ceSopenharmony_ci  deps = [
6512e714ceSopenharmony_ci    "../../frameworks/native/neural_network_core:libneural_network_core",
6612e714ceSopenharmony_ci    "../../frameworks/native/neural_network_runtime:libneural_network_runtime",
6712e714ceSopenharmony_ci    "//third_party/googletest:gtest_main",
6812e714ceSopenharmony_ci  ]
6912e714ceSopenharmony_ci
7012e714ceSopenharmony_ci  external_deps = [
7112e714ceSopenharmony_ci    "c_utils:utils",
7212e714ceSopenharmony_ci    "drivers_interface_nnrt:libnnrt_proxy_1.0",
7312e714ceSopenharmony_ci    "hdf_core:libhdf_utils",
7412e714ceSopenharmony_ci    "hilog:libhilog",
7512e714ceSopenharmony_ci    "hitrace:hitrace_meter",
7612e714ceSopenharmony_ci    "hitrace:libhitracechain",
7712e714ceSopenharmony_ci    "mindspore:mindir",
7812e714ceSopenharmony_ci  ]
7912e714ceSopenharmony_ci}
8012e714ceSopenharmony_ci
8112e714ceSopenharmony_cigroup("system_test") {
8212e714ceSopenharmony_ci  testonly = true
8312e714ceSopenharmony_ci  deps = [
8412e714ceSopenharmony_ci    ":DeviceTest",
8512e714ceSopenharmony_ci    ":End2EndTest",
8612e714ceSopenharmony_ci  ]
8712e714ceSopenharmony_ci}
88