use crate::{CheckResult, Hunspell};
#[test]
fn create_and_destroy() {
let _hs = Hunspell::new("tests/fixtures/reduced.aff", "tests/fixtures/reduced.dic");
}
#[test]
fn check() {
let hs = Hunspell::new("tests/fixtures/reduced.aff", "tests/fixtures/reduced.dic");
assert_eq!(CheckResult::FoundInDictionary, hs.check("cats"));
assert_eq!(CheckResult::MissingInDictionary, hs.check("nocats"));
}
#[test]
fn check_with_added_word() {
let mut hs = Hunspell::new("tests/fixtures/reduced.aff", "tests/fixtures/reduced.dic");
assert_eq!(CheckResult::FoundInDictionary, hs.check("cats"));
assert_eq!(CheckResult::MissingInDictionary, hs.check("octonasaurius"));
assert!(hs.add("octonasaurius"));
assert_eq!(CheckResult::FoundInDictionary, hs.check("octonasaurius"));
}
#[test]
fn check_with_extra_dic() {
let mut hs = Hunspell::new("tests/fixtures/reduced.aff", "tests/fixtures/reduced.dic");
assert_eq!(CheckResult::FoundInDictionary, hs.check("cats"));
assert_eq!(CheckResult::MissingInDictionary, hs.check("systemdunits"));
assert!(hs.add_dictionary("tests/fixtures/extra.dic"));
assert_eq!(CheckResult::FoundInDictionary, hs.check("cats"));
assert_eq!(CheckResult::FoundInDictionary, hs.check("systemdunits"));
}
#[test]
fn suggest() {
let hs = Hunspell::new("tests/fixtures/reduced.aff", "tests/fixtures/reduced.dic");
assert!(hs.suggest("progra").len() > 0);
}
#[test]
fn stem() {
let hs = Hunspell::new("tests/fixtures/reduced.aff", "tests/fixtures/reduced.dic");
let cat_stem = hs.stem("cats");
assert!(cat_stem[0] == "cat");
}