1load("@bazel_tools//tools/build_rules:test_rules.bzl", "rule_test") 2load("//rust:defs.bzl", "rust_binary", "rust_library", "rust_test") 3 4package(default_visibility = ["//visibility:public"]) 5 6rust_library( 7 name = "hello_lib", 8 srcs = [ 9 "src/greeter.rs", 10 "src/lib.rs", 11 ], 12 data = ["greeting.txt"], 13 edition = "2018", 14 deps = ["//tools/runfiles"], 15) 16 17rust_binary( 18 name = "hello_world", 19 srcs = ["src/main.rs"], 20 edition = "2018", 21 deps = [":hello_lib"], 22) 23 24rust_test( 25 name = "hello_lib_test", 26 crate = ":hello_lib", 27) 28 29rule_test( 30 name = "hello_lib_rule_test", 31 generates = ["libhello_lib-683707109.rlib"], 32 rule = ":hello_lib", 33) 34 35rule_test( 36 name = "hello_world_rule_test", 37 generates = select({ 38 "//rust/platform:windows": ["hello_world.exe"], 39 "//conditions:default": ["hello_world"], 40 }), 41 rule = "//test/rust:hello_world", 42) 43