1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- # Copyright 2022 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- import("//build/rust/mixed_static_library.gni")
- import("//build/rust/rust_macro.gni")
- import("//testing/test.gni")
- if (enable_rust) {
- mixed_static_library("rust_gtest_interop") {
- testonly = true
- sources = [
- "rust_gtest_interop.cc",
- "rust_gtest_interop.h",
- ]
- if (enable_rust) {
- rs_crate_root = "rust_gtest_interop.rs"
- rs_sources = [
- "expect_macros.rs",
- "rust_gtest_interop.rs",
- ]
- rs_cxx_bindings = [ "rust_gtest_interop.rs" ]
- rs_deps = [
- # Macros re-exported from the rust_gtest_interop crate. Can only be
- # accessed through the crate, so not public_deps.
- ":gtest_attribute",
- # This is re-exported for the gtest_attribute macros.
- "//third_party/rust/small_ctor/v0_1:test_support",
- ]
- deps = [
- "//build/rust:cxx_cppdeps",
- "//testing/gtest",
- ]
- }
- }
- rust_macro("gtest_attribute") {
- testonly = true
- crate_root = "gtest_attribute.rs"
- sources = [ "gtest_attribute.rs" ]
- deps = [
- "//third_party/rust/proc_macro2/v1:lib",
- "//third_party/rust/quote/v1:lib",
- "//third_party/rust/syn/v1:lib",
- ]
- # This target's contents are exposed as part of :rust_gtest_interop.
- visibility = [ ":*" ]
- }
- mixed_static_library("test_support") {
- rs_crate_name = "rust_gtest_interop_test_support"
- testonly = true
- sources = [
- "test/test_subclass.cc",
- "test/test_subclass.h",
- ]
- rs_crate_root = "test/test_subclass.rs"
- rs_sources = [ "test/test_subclass.rs" ]
- rs_cxx_bindings = [ "test/test_subclass.rs" ]
- rs_deps = [ ":rust_gtest_interop" ]
- public_deps = [
- ":rust_gtest_interop",
- "//testing/gtest",
- ]
- }
- test("rust_gtest_interop_unittests") {
- sources = [ "rust_gtest_interop_unittest_main.cc" ]
- deps = [
- ":test_support",
- "//base",
- "//base/test:test_support",
- "//testing/gtest",
- ]
- rs_deps = [ ":test_support" ]
- rs_sources = [ "rust_gtest_interop_unittest.rs" ]
- }
- }
|