@@ -489,7 +489,7 @@ pub fn run_tests(config: &Config) {
489
489
// Let tests know which target they're running as
490
490
env:: set_var ( "TARGET" , & config. target ) ;
491
491
492
- let res = test:: run_tests_console ( & opts, tests. into_iter ( ) . collect ( ) ) ;
492
+ let res = test:: run_tests_console ( & opts, tests) ;
493
493
match res {
494
494
Ok ( true ) => { }
495
495
Ok ( false ) => panic ! ( "Some tests failed" ) ,
@@ -548,22 +548,18 @@ fn collect_tests_from_dir(
548
548
relative_dir_path : & Path ,
549
549
tests : & mut Vec < test:: TestDescAndFn > ,
550
550
) -> io:: Result < ( ) > {
551
- // Ignore directories that contain a file
552
- // `compiletest-ignore-dir`.
553
- for file in fs:: read_dir ( dir) ? {
554
- let file = file?;
555
- let name = file. file_name ( ) ;
556
- if name == * "compiletest-ignore-dir" {
557
- return Ok ( ( ) ) ;
558
- }
559
- if name == * "Makefile" && config. mode == Mode :: RunMake {
560
- let paths = TestPaths {
561
- file : dir. to_path_buf ( ) ,
562
- relative_dir : relative_dir_path. parent ( ) . unwrap ( ) . to_path_buf ( ) ,
563
- } ;
564
- tests. extend ( make_test ( config, & paths) ) ;
565
- return Ok ( ( ) ) ;
566
- }
551
+ // Ignore directories that contain a file named `compiletest-ignore-dir`.
552
+ if dir. join ( "compiletest-ignore-dir" ) . exists ( ) {
553
+ return Ok ( ( ) ) ;
554
+ }
555
+
556
+ if config. mode == Mode :: RunMake && dir. join ( "Makefile" ) . exists ( ) {
557
+ let paths = TestPaths {
558
+ file : dir. to_path_buf ( ) ,
559
+ relative_dir : relative_dir_path. parent ( ) . unwrap ( ) . to_path_buf ( ) ,
560
+ } ;
561
+ tests. extend ( make_test ( config, & paths) ) ;
562
+ return Ok ( ( ) ) ;
567
563
}
568
564
569
565
// If we find a test foo/bar.rs, we have to build the
@@ -577,8 +573,7 @@ fn collect_tests_from_dir(
577
573
578
574
// Add each `.rs` file as a test, and recurse further on any
579
575
// subdirectories we find, except for `aux` directories.
580
- let dirs = fs:: read_dir ( dir) ?;
581
- for file in dirs {
576
+ for file in fs:: read_dir ( dir) ? {
582
577
let file = file?;
583
578
let file_path = file. path ( ) ;
584
579
let file_name = file. file_name ( ) ;
@@ -679,7 +674,7 @@ fn collect_timestamps(path: &PathBuf) -> impl Iterator<Item=FileTime> {
679
674
WalkDir :: new ( path)
680
675
. into_iter ( )
681
676
. map ( |entry| entry. unwrap ( ) )
682
- . filter ( |entry| entry. metadata ( ) . unwrap ( ) . is_file ( ) )
677
+ . filter ( |entry| entry. file_type ( ) . is_file ( ) )
683
678
. map ( |entry| mtime ( entry. path ( ) ) )
684
679
}
685
680
@@ -707,14 +702,12 @@ fn up_to_date(
707
702
. expect ( "Could not find Rust source root" ) ;
708
703
let stamp = mtime ( & stamp_name) ;
709
704
let mut inputs = vec ! [ mtime( & testpaths. file) , mtime( & config. rustc_path) ] ;
710
- for aux in props. aux . iter ( ) {
711
- inputs. push ( mtime ( & testpaths
712
- . file
713
- . parent ( )
714
- . unwrap ( )
715
- . join ( "auxiliary" )
716
- . join ( aux) ) ) ;
717
- }
705
+ inputs. extend (
706
+ props
707
+ . aux
708
+ . iter ( )
709
+ . map ( |aux| mtime ( & testpaths. file . parent ( ) . unwrap ( ) . join ( "auxiliary" ) . join ( aux) ) ) ,
710
+ ) ;
718
711
// Relevant pretty printer files
719
712
let pretty_printer_files = [
720
713
"src/etc/debugger_pretty_printers_common.py" ,
@@ -723,20 +716,20 @@ fn up_to_date(
723
716
"src/etc/lldb_batchmode.py" ,
724
717
"src/etc/lldb_rust_formatters.py" ,
725
718
] ;
726
- for pretty_printer_file in & pretty_printer_files {
727
- inputs . push ( mtime ( & rust_src_dir. join ( pretty_printer_file) ) ) ;
728
- }
719
+ inputs . extend ( pretty_printer_files. iter ( ) . map ( |pretty_printer_file| {
720
+ mtime ( & rust_src_dir. join ( pretty_printer_file) )
721
+ } ) ) ;
729
722
inputs. extend ( collect_timestamps ( & config. run_lib_path ) ) ;
730
723
if let Some ( ref rustdoc_path) = config. rustdoc_path {
731
724
inputs. push ( mtime ( & rustdoc_path) ) ;
732
725
inputs. push ( mtime ( & rust_src_dir. join ( "src/etc/htmldocck.py" ) ) ) ;
733
726
}
734
727
735
728
// UI test files.
736
- for extension in UI_EXTENSIONS {
729
+ inputs . extend ( UI_EXTENSIONS . iter ( ) . map ( |extension| {
737
730
let path = & expected_output_path ( testpaths, revision, & config. compare_mode , extension) ;
738
- inputs . push ( mtime ( path) ) ;
739
- }
731
+ mtime ( path)
732
+ } ) ) ;
740
733
741
734
// Compiletest itself.
742
735
inputs. extend ( collect_timestamps ( & rust_src_dir. join ( "src/tools/compiletest/" ) ) ) ;
0 commit comments