# Copyright (C) 2021-2023 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/test.gni") import("//foundation/communication/dhcp/dhcp.gni") module_output_path = "dhcp/dhcp_client_test" config("module_private_config") { visibility = [ ":*" ] include_dirs = [ "$DHCP_ROOT_DIR/services/dhcp_client/include" ] } ohos_unittest("dhcp_client_unittest") { module_out_path = module_output_path sources = [ "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_client_callback_proxy.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_client_death_recipient.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_client_service_impl.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_client_state_machine.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_client_stub.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_function.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_ipv6_client.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_ipv6_event.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_options.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_result.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_result_store_manager.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_socket.cpp", "$DHCP_ROOT_DIR/services/dhcp_client/src/dhcp_thread.cpp", "dhcp_client_callback_proxy_test.cpp", "dhcp_client_death_recipient_test.cpp", "dhcp_client_service_impl_test.cpp", "dhcp_client_state_machine_test.cpp", "dhcp_client_stub_test.cpp", "dhcp_client_test.cpp", "dhcp_function_test.cpp", "dhcp_ipv6_client_test.cpp", "dhcp_options_test.cpp", "dhcp_result_store_manager_test.cpp", "dhcp_result_test.cpp", "dhcp_socket_test.cpp", "dhcp_thread_test.cpp", "mock_custom_func.cpp", "mock_system_func.cpp", ] include_dirs = [ "//third_party/openssl/include", "$DHCP_ROOT_DIR/frameworks/native/include", "$DHCP_ROOT_DIR/frameworks/native/interfaces", "$DHCP_ROOT_DIR/frameworks/native/src", "$DHCP_ROOT_DIR/frameworks/native/c_adapter/inc", "$DHCP_ROOT_DIR/interfaces", "$DHCP_ROOT_DIR/interfaces/inner_api", "$DHCP_ROOT_DIR/interfaces/inner_api/include", "$DHCP_ROOT_DIR/interfaces/kits/c", "$DHCP_ROOT_DIR/services", "$DHCP_ROOT_DIR/services/dhcp_client/include", "$DHCP_ROOT_DIR/services/dhcp_server/include", ] deps = [ "$DHCP_ROOT_DIR/services/utils:dhcp_utils", "//third_party/googletest:gmock_main", "//third_party/googletest:gtest_main", "//third_party/openssl:libcrypto_shared", ] ldflags = [ "-fPIC", "-Wl,-E", "--coverage", "-Wl,-rpath=/vendor/lib64/hw", "-Wl,--wrap=open", "-Wl,--wrap=close", "-Wl,--wrap=write", "-Wl,--wrap=read", "-Wl,--wrap=socket", "-Wl,--wrap=setsockopt", "-Wl,--wrap=ioctl", "-Wl,--wrap=bind", "-Wl,--wrap=listen", "-Wl,--wrap=connect", "-Wl,--wrap=select", "-Wl,--wrap=sendto", "-Wl,--wrap=socketpair", "-Wl,--wrap=GetDhcpRawPacket", "-Wl,--wrap=GetDhcpKernelPacket", "-Wl,--wrap=GetSelectRet", ] cflags_cc = [ "-Wno-unused-variable" ] external_deps = [ "ability_runtime:wantagent_innerkits", "access_token:libaccesstoken_sdk", "access_token:libtokenid_sdk", "c_utils:utils", "hilog:libhilog", "ipc:ipc_single", "netmanager_base:net_native_manager_if", "netmanager_base:netsys_controller", "safwk:system_ability_fwk", "samgr:samgr_proxy", "time_service:time_client", ] configs = [ ":module_private_config" ] defines = [ "private = public", "protected = public", "VENDOR_NAME_PREFIX=\"$VENDOR_NAME\"", "DEFAULT_IPV4_DNS_PRI=\"$IPV4_DNS_PRI\"", "DEFAULT_IPV4_DNS_SEC=\"$IPV4_DNS_SEC\"", ] if (defined(global_parts_info) && defined(global_parts_info.resourceschedule_ffrt)) { external_deps += [ "ffrt:libffrt" ] defines += [ "DHCP_FFRT_ENABLE" ] } part_name = "dhcp" subsystem_name = "communication" testonly = true } group("unittest") { testonly = true deps = [ ":dhcp_client_unittest" ] }