@@ -2257,7 +2257,12 @@ impl BookTest {
2257
2257
}
2258
2258
2259
2259
macro_rules! test_book {
2260
- ( $( $name: ident, $path: expr, $book_name: expr, default =$default: expr; ) +) => {
2260
+ ( $(
2261
+ $name: ident, $path: expr, $book_name: expr,
2262
+ default =$default: expr
2263
+ $( , submodules = $submodules: expr) ?
2264
+ ;
2265
+ ) +) => {
2261
2266
$(
2262
2267
#[ derive( Debug , Clone , PartialEq , Eq , Hash ) ]
2263
2268
pub struct $name {
@@ -2280,6 +2285,11 @@ macro_rules! test_book {
2280
2285
}
2281
2286
2282
2287
fn run( self , builder: & Builder <' _>) {
2288
+ $(
2289
+ for submodule in $submodules {
2290
+ builder. require_and_update_submodule( submodule, None ) ;
2291
+ }
2292
+ ) *
2283
2293
builder. ensure( BookTest {
2284
2294
compiler: self . compiler,
2285
2295
path: PathBuf :: from( $path) ,
@@ -2293,15 +2303,15 @@ macro_rules! test_book {
2293
2303
}
2294
2304
2295
2305
test_book ! (
2296
- Nomicon , "src/doc/nomicon" , "nomicon" , default =false ;
2297
- Reference , "src/doc/reference" , "reference" , default =false ;
2306
+ Nomicon , "src/doc/nomicon" , "nomicon" , default =false , submodules= [ "src/doc/nomicon" ] ;
2307
+ Reference , "src/doc/reference" , "reference" , default =false , submodules= [ "src/doc/reference" ] ;
2298
2308
RustdocBook , "src/doc/rustdoc" , "rustdoc" , default =true ;
2299
2309
RustcBook , "src/doc/rustc" , "rustc" , default =true ;
2300
- RustByExample , "src/doc/rust-by-example" , "rust-by-example" , default =false ;
2301
- EmbeddedBook , "src/doc/embedded-book" , "embedded-book" , default =false ;
2302
- TheBook , "src/doc/book" , "book" , default =false ;
2310
+ RustByExample , "src/doc/rust-by-example" , "rust-by-example" , default =false , submodules= [ "src/doc/rust-by-example" ] ;
2311
+ EmbeddedBook , "src/doc/embedded-book" , "embedded-book" , default =false , submodules= [ "src/doc/embedded-book" ] ;
2312
+ TheBook , "src/doc/book" , "book" , default =false , submodules= [ "src/doc/book" ] ;
2303
2313
UnstableBook , "src/doc/unstable-book" , "unstable-book" , default =true ;
2304
- EditionGuide , "src/doc/edition-guide" , "edition-guide" , default =false ;
2314
+ EditionGuide , "src/doc/edition-guide" , "edition-guide" , default =false , submodules= [ "src/doc/edition-guide" ] ;
2305
2315
) ;
2306
2316
2307
2317
#[ derive( Debug , Clone , PartialEq , Eq , Hash ) ]
0 commit comments