test_get_dbpath_for_term(): handle non-utf8 paths
This commit is contained in:
parent
54a6bb7f0d
commit
d1940912e5
@ -6,14 +6,12 @@ fn test_get_dbpath_for_term() {
|
|||||||
// woefully inadequate test coverage
|
// woefully inadequate test coverage
|
||||||
// note: current tests won't work with non-standard terminfo hierarchies (e.g., macOS's)
|
// note: current tests won't work with non-standard terminfo hierarchies (e.g., macOS's)
|
||||||
use std::env;
|
use std::env;
|
||||||
// FIXME (#9639): This needs to handle non-utf8 paths
|
fn x(t: &str) -> PathBuf {
|
||||||
fn x(t: &str) -> String {
|
get_dbpath_for_term(t).expect(&format!("no terminfo entry found for {t:?}"))
|
||||||
let p = get_dbpath_for_term(t).expect("no terminfo entry found");
|
|
||||||
p.to_str().unwrap().to_string()
|
|
||||||
}
|
}
|
||||||
assert_eq!(x("screen"), "/usr/share/terminfo/s/screen");
|
assert_eq!(x("screen"), PathBuf::from("/usr/share/terminfo/s/screen"));
|
||||||
assert_eq!(get_dbpath_for_term(""), None);
|
assert_eq!(get_dbpath_for_term(""), None);
|
||||||
env::set_var("TERMINFO_DIRS", ":");
|
env::set_var("TERMINFO_DIRS", ":");
|
||||||
assert_eq!(x("screen"), "/usr/share/terminfo/s/screen");
|
assert_eq!(x("screen"), PathBuf::from("/usr/share/terminfo/s/screen"));
|
||||||
env::remove_var("TERMINFO_DIRS");
|
env::remove_var("TERMINFO_DIRS");
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user