@@ -90,31 +90,19 @@ mod tests {
9090 assert_eq ! ( Language :: from_filename( filename) . unwrap( ) , expected) ;
9191 }
9292
93- #[ test]
94- fn fails_to_parse_language_from_invalid_filename ( ) {
95- assert_eq ! (
96- Language :: from_filename( ".java" ) . unwrap_err( ) ,
97- LanguageError :: InvalidFilename
98- ) ;
99-
100- assert_eq ! (
101- Language :: from_filename( "py" ) . unwrap_err( ) ,
102- LanguageError :: InvalidFilename
103- ) ;
104-
105- assert_eq ! (
106- Language :: from_filename( "file." ) . unwrap_err( ) ,
107- LanguageError :: InvalidFilename
108- ) ;
109-
110- assert_eq ! (
111- Language :: from_filename( "run.exe" ) . unwrap_err( ) ,
112- LanguageError :: UnsupportedExtension ( "exe" . to_string( ) )
113- ) ;
114-
93+ #[ rstest]
94+ #[ case( ".java" , LanguageError :: InvalidFilename ) ]
95+ #[ case( "py" , LanguageError :: InvalidFilename ) ]
96+ #[ case( "file." , LanguageError :: InvalidFilename ) ]
97+ #[ case( "run.exe" , LanguageError :: UnsupportedExtension ( "exe" . to_string( ) ) ) ]
98+ #[ case( "" , LanguageError :: InvalidFilename ) ]
99+ fn fails_to_parse_language_from_invalid_filename (
100+ #[ case] filename : & str ,
101+ #[ case] expected_error : LanguageError ,
102+ ) {
115103 assert_eq ! (
116- Language :: from_filename( "" ) . unwrap_err( ) ,
117- LanguageError :: InvalidFilename
104+ Language :: from_filename( filename ) . unwrap_err( ) ,
105+ expected_error
118106 ) ;
119107 }
120108
0 commit comments