blob: 242f0b62ee55788bb712b920fcc94f437f1e17a3 [file]
# Copyright (c) 2026 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
import("//build/rust/rust_static_library.gni")
import("//build/rust/rust_unit_test.gni")
import("../../../webrtc.gni")
# These provide the base import macros for webrtc, and thus use the templates
# from //build and not webrtc's macros.
if (enable_rust && rtc_include_tests) {
# Co-located dummy library crate used to validate explicit target colon matching.
# Since it lives in the same `test_subdir` directory, we can validate that the macro
# correctly strips the extra trailing slash right before the colon when injecting the prefix.
rust_static_library("webrtc_import_prefix_lib") {
testonly = true
crate_root = "webrtc_import_prefix_lib.rs"
sources = [ "webrtc_import_prefix_lib.rs" ]
# Don't depend on ourselves.
no_chromium_prelude = true
}
# Integration test validating the macro expansion behavior in Vendor Prefix mode.
# Sets `WEBRTC_GN_PREFIX = //rust/webrtc_import/test_subdir` to simulate embedded layout configurations.
# Utilizes the root-colon syntax (`//:webrtc_import_prefix_lib`) to import targets
# without forcing redundant child directory layouts.
rtc_rust_unittest("webrtc_import_prefix_test") {
crate_root = "webrtc_import_prefix_test.rs"
sources = [ "webrtc_import_prefix_test.rs" ]
deps = [
":webrtc_import_prefix_lib",
"../:webrtc_import",
]
rustenv = [ "WEBRTC_GN_PREFIX=//rust/webrtc_import/test_subdir" ]
}
}