1
1
#![ feature( test) ]
2
2
3
3
use compiletest_rs as compiletest;
4
- use libtest :: TestDescAndFn ;
4
+ extern crate test ;
5
5
6
6
use std:: env:: { set_var, var} ;
7
7
use std:: ffi:: OsStr ;
@@ -74,12 +74,16 @@ fn run_mode(mode: &str, dir: PathBuf) {
74
74
compiletest:: run_tests ( & cfg) ;
75
75
}
76
76
77
- #[ warn ( clippy:: identity_conversion) ]
78
- fn run_ui_toml_tests ( config : & compiletest:: Config , mut tests : Vec < TestDescAndFn > ) -> Result < bool , io:: Error > {
77
+ #[ allow ( clippy:: identity_conversion) ]
78
+ fn run_ui_toml_tests ( config : & compiletest:: Config , mut tests : Vec < test :: TestDescAndFn > ) -> Result < bool , io:: Error > {
79
79
let mut result = true ;
80
80
let opts = compiletest:: test_opts ( config) ;
81
81
for dir in fs:: read_dir ( & config. src_base ) ? {
82
- let dir_path = dir. unwrap ( ) . path ( ) ;
82
+ let dir = dir?;
83
+ if !dir. file_type ( ) ?. is_dir ( ) {
84
+ continue ;
85
+ }
86
+ let dir_path = dir. path ( ) ;
83
87
set_var ( "CARGO_MANIFEST_DIR" , & dir_path) ;
84
88
for file in fs:: read_dir ( & dir_path) ? {
85
89
let file = file?;
@@ -98,25 +102,9 @@ fn run_ui_toml_tests(config: &compiletest::Config, mut tests: Vec<TestDescAndFn>
98
102
let test_name = compiletest:: make_test_name ( & config, & paths) ;
99
103
let index = tests
100
104
. iter ( )
101
- . position ( |test| test. desc . name . to_string ( ) == test_name. to_string ( ) )
105
+ . position ( |test| test. desc . name == test_name)
102
106
. 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) ] ) ?;
107
+ result &= test:: run_tests_console ( & opts, vec ! [ tests. swap_remove( index) ] ) ?;
120
108
}
121
109
}
122
110
Ok ( result)
@@ -127,22 +115,6 @@ fn run_ui_toml() {
127
115
let config = config ( "ui" , path) ;
128
116
let tests = compiletest:: make_tests ( & config) ;
129
117
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
-
146
118
let res = run_ui_toml_tests ( & config, tests) ;
147
119
match res {
148
120
Ok ( true ) => { } ,
0 commit comments