blob: 1c5545f2fbdbd2666acb0484e90634cfe7bcc93f [file] [log] [blame] [edit]
# Copyright 2019 The Fuchsia 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/rustc_binary.gni")
import("//build/rust/rustc_library.gni")
import("//src/sys/build/components.gni")
import("//tools/cmc/build/expect_includes.gni")
rustc_library("lib") {
name = "test_runners_lib"
with_unit_tests = true
edition = "2018"
# Only for internal use.
visibility = [ "./*" ]
deps = [
"//garnet/lib/rust/io_util",
"//sdk/fidl/fuchsia.component.runner:fuchsia.component.runner-rustc",
"//sdk/fidl/fuchsia.io:fuchsia.io-rustc",
"//sdk/fidl/fuchsia.process:fuchsia.process-rustc",
"//sdk/fidl/fuchsia.test:fuchsia.test-rustc",
"//sdk/fidl/fuchsia.test:rust_measure_tape_for_case",
"//src/lib/fdio/rust:fdio",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//src/lib/fuchsia-runtime",
"//src/lib/syslog/rust:syslog",
"//src/lib/zircon/rust:fuchsia-zircon",
"//src/lib/zircon/rust:fuchsia-zircon-sys",
"//src/sys/lib/runner",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:log",
"//third_party/rust_crates:matches",
"//third_party/rust_crates:serde_json",
"//third_party/rust_crates:thiserror",
]
sources = [
"src/cases.rs",
"src/elf/elf_component.rs",
"src/elf/mod.rs",
"src/elf/server.rs",
"src/errors.rs",
"src/launch.rs",
"src/lib.rs",
"src/logs.rs",
]
}
rustc_library("test_lib") {
testonly = true
name = "test_runners_test_lib"
with_unit_tests = true
edition = "2018"
source_root = "src/test_lib.rs"
# Only for internal use.
visibility = [ "./*" ]
deps = [
"//sdk/fidl/fuchsia.test:fuchsia.test-rustc",
"//src/lib/test_executor/rust:test_executor",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:futures",
]
sources = [ "src/test_lib.rs" ]
}
rustc_binary("echo_server_for_concurrency_test_bin") {
name = "echo_server_for_concurrency_test"
edition = "2018"
source_root = "src/echo_server_for_concurrency_test.rs"
deps = [
"//examples/components/routing/fidl:echo-rustc",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-component",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:futures",
]
sources = [ "src/echo_server_for_concurrency_test.rs" ]
}
fuchsia_component("echo_server_for_concurrency_test") {
testonly = true
manifest = "meta/echo-server-for-concurrency-test.cml"
component_name = "echo-server-for-concurrency-test"
deps = [ ":echo_server_for_concurrency_test_bin" ]
}
fuchsia_unittest_package("test-runner-unit-tests") {
deps = [ ":lib_test" ]
}
fuchsia_unittest_package("test-runner-test-lib-unit-tests") {
deps = [ ":test_lib_test" ]
}
expect_includes("tmp_storage") {
includes = [ "tmp_storage.shard.cml" ]
}
group("test_runners") {
testonly = true
deps = [
"elf",
"gotests",
"gtest",
"rust",
]
}
group("tests") {
testonly = true
deps = [
":test-runner-test-lib-unit-tests",
":test-runner-unit-tests",
"elf:tests",
"gotests:tests",
"gtest:tests",
"rust:tests",
]
}