@@ -137,6 +137,7 @@ fn main() -> std::process::ExitCode {{
137137const TESTS: [test::TestDescAndFn; {nb_tests}] = [{ids}];
138138let bin_marker = std::ffi::OsStr::new(__doctest_mod::BIN_OPTION);
139139let test_marker = std::ffi::OsStr::new(__doctest_mod::RUN_OPTION);
140+ let test_args = &[{test_args}];
140141
141142let mut args = std::env::args_os().skip(1);
142143while let Some(arg) = args.next() {{
@@ -145,11 +146,7 @@ while let Some(arg) = args.next() {{
145146 panic!(\" missing argument after `{{}}`\" , __doctest_mod::BIN_OPTION);
146147 }};
147148 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));
153150 }} else if arg == test_marker {{
154151 let Some(nb_test) = args.next() else {{
155152 panic!(\" missing argument after `{{}}`\" , __doctest_mod::RUN_OPTION);
@@ -165,7 +162,8 @@ while let Some(arg) = args.next() {{
165162 }}
166163}}
167164
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))
169167}}" ,
170168 nb_tests = self . nb_tests,
171169 output = self . output,
0 commit comments