add an attribute to inner doctest fn

This commit is contained in:
Arpad Borsos 2020-12-20 10:00:32 +01:00
parent 830ceaa419
commit f9fa3fe65f
2 changed files with 7 additions and 6 deletions

View file

@ -551,17 +551,18 @@ crate fn make_test(
} else {
"_inner".into()
};
let inner_attr = if test_id.is_some() { "#[allow(non_snake_case)] " } else { "" };
let (main_pre, main_post) = if returns_result {
(
format!(
"fn main() {{ fn {}() -> Result<(), impl core::fmt::Debug> {{\n",
inner_fn_name
"fn main() {{ {}fn {}() -> Result<(), impl core::fmt::Debug> {{\n",
inner_attr, inner_fn_name
),
format!("\n}}; {}().unwrap() }}", inner_fn_name),
)
} else if test_id.is_some() {
(
format!("fn main() {{ fn {}() {{\n", inner_fn_name),
format!("fn main() {{ {}fn {}() {{\n", inner_attr, inner_fn_name),
format!("\n}}; {}() }}", inner_fn_name),
)
} else {

View file

@ -304,11 +304,11 @@ fn make_test_named_wrapper() {
let opts = TestOptions::default();
let input = "assert_eq!(2+2, 4);";
let expected = "#![allow(unused)]
fn main() { fn _doctest_main_some_unique_name() {
fn main() { #[allow(non_snake_case)] fn _doctest_main__some_unique_name() {
assert_eq!(2+2, 4);
}; _doctest_main_some_unique_name() }"
}; _doctest_main__some_unique_name() }"
.to_string();
let (output, len, _) =
make_test(input, None, false, &opts, DEFAULT_EDITION, Some("some_unique_name"));
make_test(input, None, false, &opts, DEFAULT_EDITION, Some("_some_unique_name"));
assert_eq!((output, len), (expected, 2));
}