Skip to content

Commit ac014ad

Browse files
committed
test: Refactor function 'fails_to_parse_language_from_invalid_filename'
1 parent 0074c81 commit ac014ad

File tree

1 file changed

+12
-24
lines changed

1 file changed

+12
-24
lines changed

src/file_manager/models.rs

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)