Skip to content

Commit

Permalink
Add test for rules_rust#1952
Browse files Browse the repository at this point in the history
Adds a test that reproduces the bug mentioned in rules_rust#1952.
  • Loading branch information
armandomontanez authored and konkers committed Sep 5, 2024
1 parent 8aed695 commit 3e6bb71
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 0 deletions.
9 changes: 9 additions & 0 deletions test/unit/rustdoc/procmacro_in_rustdoc.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/// A different answer that only exists if using procmacros.
/// ```
/// use rustdoc_proc_macro::make_answer;
/// make_answer!();
/// assert_eq!(answer(), 42);
/// ```
pub fn procmacro_answer() -> u32 {
24
}
22 changes: 22 additions & 0 deletions test/unit/rustdoc/rustdoc_unit_test.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,14 @@ def _rustdoc_for_lib_with_proc_macro_test_impl(ctx):

return analysistest.end(env)

def _rustdoc_for_lib_with_proc_macro_in_docs_test_impl(ctx):
env = analysistest.begin(ctx)
tut = analysistest.target_under_test(env)

_common_rustdoc_checks(env, tut)

return analysistest.end(env)

def _rustdoc_for_bin_with_transitive_proc_macro_test_impl(ctx):
env = analysistest.begin(ctx)
tut = analysistest.target_under_test(env)
Expand Down Expand Up @@ -145,6 +153,7 @@ rustdoc_for_bin_with_cc_lib_test = analysistest.make(_rustdoc_for_bin_with_cc_li
rustdoc_for_bin_with_transitive_cc_lib_test = analysistest.make(_rustdoc_for_bin_with_transitive_cc_lib_test_impl)
rustdoc_for_proc_macro_test = analysistest.make(_rustdoc_for_proc_macro_test_impl)
rustdoc_for_lib_with_proc_macro_test = analysistest.make(_rustdoc_for_lib_with_proc_macro_test_impl)
rustdoc_for_lib_with_proc_macro_in_docs_test = analysistest.make(_rustdoc_for_lib_with_proc_macro_in_docs_test_impl)
rustdoc_for_bin_with_transitive_proc_macro_test = analysistest.make(_rustdoc_for_bin_with_transitive_proc_macro_test_impl)
rustdoc_for_lib_with_cc_lib_test = analysistest.make(_rustdoc_for_lib_with_cc_lib_test_impl)
rustdoc_with_args_test = analysistest.make(_rustdoc_with_args_test_impl)
Expand Down Expand Up @@ -234,6 +243,13 @@ def _define_targets():
crate_features = ["with_proc_macro"],
)

_target_maker(
rust_library,
name = "lib_with_proc_macro_in_docs",
srcs = ["procmacro_in_rustdoc.rs"],
proc_macro_deps = [":rustdoc_proc_macro"],
)

_target_maker(
rust_library,
name = "lib_nodep_with_proc_macro",
Expand Down Expand Up @@ -371,6 +387,11 @@ def rustdoc_test_suite(name):
target_under_test = ":rustdoc_proc_macro_doc",
)

rustdoc_for_lib_with_proc_macro_in_docs_test(
name = "rustdoc_for_lib_with_proc_macro_in_docs_test",
target_under_test = ":lib_with_proc_macro_in_docs_doc",
)

rustdoc_for_lib_with_proc_macro_test(
name = "rustdoc_for_lib_with_proc_macro_test",
target_under_test = ":lib_with_proc_macro_doc",
Expand Down Expand Up @@ -414,6 +435,7 @@ def rustdoc_test_suite(name):
":rustdoc_for_bin_with_cc_lib_test",
":rustdoc_for_bin_with_transitive_cc_lib_test",
":rustdoc_for_proc_macro_test",
":rustdoc_for_lib_with_proc_macro_in_docs_test",
":rustdoc_for_lib_with_proc_macro_test",
":rustdoc_for_lib_with_cc_lib_test",
":rustdoc_with_args_test",
Expand Down

0 comments on commit 3e6bb71

Please sign in to comment.