diff options
Diffstat (limited to 'third_party/rust/strsim/tests/lib.rs')
-rw-r--r-- | third_party/rust/strsim/tests/lib.rs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/third_party/rust/strsim/tests/lib.rs b/third_party/rust/strsim/tests/lib.rs new file mode 100644 index 0000000000..46478828f4 --- /dev/null +++ b/third_party/rust/strsim/tests/lib.rs @@ -0,0 +1,39 @@ +extern crate strsim; + +use strsim::{hamming, levenshtein, osa_distance, damerau_levenshtein, jaro, + jaro_winkler}; + +#[test] +fn hamming_works() { + match hamming("hamming", "hammers") { + Ok(distance) => assert_eq!(3, distance), + Err(why) => panic!("{:?}", why) + } +} + +#[test] +fn levenshtein_works() { + assert_eq!(3, levenshtein("kitten", "sitting")); +} + +#[test] +fn osa_distance_works() { + assert_eq!(3, osa_distance("ac", "cba")); +} + +#[test] +fn damerau_levenshtein_works() { + assert_eq!(2, damerau_levenshtein("ac", "cba")); +} + +#[test] +fn jaro_works() { + assert!((0.392 - jaro("Friedrich Nietzsche", "Jean-Paul Sartre")).abs() < + 0.001); +} + +#[test] +fn jaro_winkler_works() { + assert!((0.911 - jaro_winkler("cheeseburger", "cheese fries")).abs() < + 0.001); +} |