@@ -50,13 +50,11 @@ impl SqlFilesList {
5050 /// # Errors
5151 ///
5252 /// Returns an [`io::Error`] if directory traversal fails.
53- pub fn new < P : AsRef < Path > > ( path : P , deny_list : Option < Vec < String > > ) -> io:: Result < Self > {
53+ pub fn new < P : AsRef < Path > > ( path : P , deny_list : & [ String ] ) -> io:: Result < Self > {
5454 let recursive_scan = recursive_dir_scan ( path. as_ref ( ) ) ?;
55- let allow_list = if let Some ( list ) = deny_list {
56- let deny = DenyList :: new ( & list ) ;
55+ let allow_list = {
56+ let deny = DenyList :: new ( deny_list ) ;
5757 recursive_scan. into_iter ( ) . filter ( |p| !deny. deny_files ( ) . contains ( p) ) . collect ( )
58- } else {
59- recursive_scan
6058 } ;
6159
6260 Ok ( Self { sql_files : allow_list } )
@@ -163,7 +161,7 @@ impl SqlFileSet {
163161 ///
164162 /// Returns an [`io::Error`] if directory traversal fails or if any of the
165163 /// discovered SQL files cannot be read.
166- pub fn new ( path : & Path , deny_list : Option < Vec < String > > ) -> io:: Result < Self > {
164+ pub fn new ( path : & Path , deny_list : & [ String ] ) -> io:: Result < Self > {
167165 let sql_files_list = SqlFilesList :: new ( path, deny_list) ?;
168166
169167 let files_contents = sql_files_list
@@ -260,7 +258,7 @@ mod tests {
260258 fs:: File :: create ( & file2) ?;
261259 fs:: File :: create ( & non_sql1) ?;
262260 fs:: File :: create ( & non_sql2) ?;
263- let sql_file_list = SqlFilesList :: new ( & base, None ) ?;
261+ let sql_file_list = SqlFilesList :: new ( & base, & [ ] ) ?;
264262 let mut expected = vec ! [ & file1, & file2] ;
265263 expected. sort ( ) ;
266264 assert_eq ! ( sql_file_list. sql_files_sorted( ) , expected) ;
@@ -289,7 +287,7 @@ mod tests {
289287 let mut expected = vec ! [ & file1, & file2] ;
290288 expected. sort ( ) ;
291289 let mut found: Vec < & PathBuf > = Vec :: new ( ) ;
292- let sql_file_set = SqlFileSet :: new ( & base, None ) ?;
290+ let sql_file_set = SqlFileSet :: new ( & base, & [ ] ) ?;
293291 for file in sql_file_set. iter ( ) {
294292 assert_eq ! ( file. content, sql_statement) ;
295293 found. push ( & file. path ) ;
@@ -314,7 +312,7 @@ mod tests {
314312 fs:: File :: create ( & file2) ?;
315313 fs:: File :: create ( & non_sql1) ?;
316314 fs:: File :: create ( & non_sql2) ?;
317- let deny_list = Some ( vec ! [ file1. to_string_lossy( ) . to_string( ) ] ) ;
315+ let deny_list = & [ file1. to_string_lossy ( ) . to_string ( ) ] ;
318316 let sql_file_list = SqlFilesList :: new ( & base, deny_list) ?;
319317 let found = sql_file_list. sql_files_sorted ( ) ;
320318 let mut expected = vec ! [ & file2] ;
@@ -328,22 +326,22 @@ mod tests {
328326 #[ test]
329327 fn test_file_fails ( ) {
330328 let invalid_dir = "INVALID" ;
331- let failed_list = SqlFilesList :: new ( invalid_dir, None ) ;
329+ let failed_list = SqlFilesList :: new ( invalid_dir, & [ ] ) ;
332330 assert ! ( failed_list. is_err( ) ) ;
333331
334332 let base = env:: temp_dir ( ) . join ( "test_files_fails_dir" ) ;
335333 let _ = fs:: remove_dir_all ( & base) ;
336334 fs:: create_dir_all ( & base) . unwrap_or_else ( |e| panic ! ( "panicked on {e}" ) ) ;
337335 let bad_file = base. join ( "one.sql" ) ;
338336 fs:: File :: create ( & bad_file) . unwrap_or_else ( |e| panic ! ( "panicked on {e}" ) ) ;
339- let failed_read = SqlFilesList :: new ( & bad_file, None ) ;
337+ let failed_read = SqlFilesList :: new ( & bad_file, & [ ] ) ;
340338 assert ! ( failed_read. is_err( ) ) ;
341339 let missed_file = base. join ( "missing.sql" ) ;
342340 let missing_file = SqlFile :: new ( & missed_file) ;
343341 assert ! ( missing_file. is_err( ) ) ;
344342 let _ = fs:: remove_dir_all ( & base) ;
345343
346- let bad_file_list = SqlFileSet :: new ( Path :: new ( invalid_dir) , None ) ;
344+ let bad_file_list = SqlFileSet :: new ( Path :: new ( invalid_dir) , & [ ] ) ;
347345 assert ! ( bad_file_list. is_err( ) ) ;
348346 }
349347}
0 commit comments