@@ -137,6 +137,7 @@ fn main() -> std::process::ExitCode {{
137
137
const TESTS: [test::TestDescAndFn; {nb_tests}] = [{ids}];
138
138
let bin_marker = std::ffi::OsStr::new(__doctest_mod::BIN_OPTION);
139
139
let test_marker = std::ffi::OsStr::new(__doctest_mod::RUN_OPTION);
140
+ let test_args = &[{test_args}];
140
141
141
142
let mut args = std::env::args_os().skip(1);
142
143
while let Some(arg) = args.next() {{
@@ -145,11 +146,7 @@ while let Some(arg) = args.next() {{
145
146
panic!(\" missing argument after `{{}}`\" , __doctest_mod::BIN_OPTION);
146
147
}};
147
148
unsafe {{ crate::__doctest_mod::BINARY_PATH = Some(binary.into()); }}
148
- return std::process::Termination::report(test::test_main(
149
- &[{test_args}],
150
- Vec::from(TESTS),
151
- None,
152
- ));
149
+ return std::process::Termination::report(test::test_main(test_args, Vec::from(TESTS), None));
153
150
}} else if arg == test_marker {{
154
151
let Some(nb_test) = args.next() else {{
155
152
panic!(\" missing argument after `{{}}`\" , __doctest_mod::RUN_OPTION);
@@ -165,7 +162,8 @@ while let Some(arg) = args.next() {{
165
162
}}
166
163
}}
167
164
168
- panic!(\" missing argument for merged doctest binary\" );
165
+ eprintln!(\" WARNING: No argument provided so doctests will be run in the same process\" );
166
+ std::process::Termination::report(test::test_main(test_args, Vec::from(TESTS), None))
169
167
}}" ,
170
168
nb_tests = self . nb_tests,
171
169
output = self . output,
0 commit comments