11#![ feature( test) ]
22
33use compiletest_rs as compiletest;
4- use libtest :: TestDescAndFn ;
4+ extern crate test ;
55
66use std:: env:: { set_var, var} ;
77use std:: ffi:: OsStr ;
@@ -74,12 +74,15 @@ fn run_mode(mode: &str, dir: PathBuf) {
7474 compiletest:: run_tests ( & cfg) ;
7575}
7676
77- #[ warn( clippy:: identity_conversion) ]
78- fn run_ui_toml_tests ( config : & compiletest:: Config , mut tests : Vec < TestDescAndFn > ) -> Result < bool , io:: Error > {
77+ fn run_ui_toml_tests ( config : & compiletest:: Config , mut tests : Vec < test:: TestDescAndFn > ) -> Result < bool , io:: Error > {
7978 let mut result = true ;
8079 let opts = compiletest:: test_opts ( config) ;
8180 for dir in fs:: read_dir ( & config. src_base ) ? {
82- let dir_path = dir. unwrap ( ) . path ( ) ;
81+ let dir = dir?;
82+ if !dir. file_type ( ) ?. is_dir ( ) {
83+ continue ;
84+ }
85+ let dir_path = dir. path ( ) ;
8386 set_var ( "CARGO_MANIFEST_DIR" , & dir_path) ;
8487 for file in fs:: read_dir ( & dir_path) ? {
8588 let file = file?;
@@ -98,25 +101,9 @@ fn run_ui_toml_tests(config: &compiletest::Config, mut tests: Vec<TestDescAndFn>
98101 let test_name = compiletest:: make_test_name ( & config, & paths) ;
99102 let index = tests
100103 . iter ( )
101- . position ( |test| test. desc . name . to_string ( ) == test_name. to_string ( ) )
104+ . position ( |test| test. desc . name == test_name)
102105 . expect ( "The test should be in there" ) ;
103- let opts = libtest:: TestOpts {
104- list : opts. list ,
105- filter : opts. filter . clone ( ) ,
106- filter_exact : opts. filter_exact ,
107- exclude_should_panic : Default :: default ( ) ,
108- run_ignored : libtest:: RunIgnored :: No ,
109- run_tests : opts. run_tests ,
110- bench_benchmarks : opts. bench_benchmarks ,
111- logfile : opts. logfile . clone ( ) ,
112- nocapture : opts. nocapture ,
113- color : libtest:: ColorConfig :: AutoColor ,
114- format : libtest:: OutputFormat :: Pretty ,
115- test_threads : opts. test_threads ,
116- skip : opts. skip . clone ( ) ,
117- options : libtest:: Options :: new ( ) ,
118- } ;
119- result &= libtest:: run_tests_console ( & opts, vec ! [ tests. swap_remove( index) ] ) ?;
106+ result &= test:: run_tests_console ( & opts, vec ! [ tests. swap_remove( index) ] ) ?;
120107 }
121108 }
122109 Ok ( result)
@@ -127,22 +114,6 @@ fn run_ui_toml() {
127114 let config = config ( "ui" , path) ;
128115 let tests = compiletest:: make_tests ( & config) ;
129116
130- let tests = tests
131- . into_iter ( )
132- . map ( |test| {
133- libtest:: TestDescAndFn {
134- desc : libtest:: TestDesc {
135- name : libtest:: TestName :: DynTestName ( test. desc . name . to_string ( ) ) ,
136- ignore : test. desc . ignore ,
137- allow_fail : test. desc . allow_fail ,
138- should_panic : libtest:: ShouldPanic :: No ,
139- } ,
140- // oli obk giving up
141- testfn : unsafe { std:: mem:: transmute ( test. testfn ) } ,
142- }
143- } )
144- . collect ( ) ;
145-
146117 let res = run_ui_toml_tests ( & config, tests) ;
147118 match res {
148119 Ok ( true ) => { } ,
0 commit comments