Fix tests on macos and linux
This commit is contained in:
parent
2e068154a7
commit
a19b070fde
|
@ -283,6 +283,7 @@ mod tests {
|
|||
use super::*;
|
||||
use std::io::Write;
|
||||
use tempfile::{NamedTempFile, TempDir};
|
||||
use std::any::Any;
|
||||
|
||||
const TEST_WORKING_CONFIG_FILE : &str = include_str!("../res/test/working_config.yaml");
|
||||
const TEST_CONFIG_FILE_WITH_BAD_YAML : &str = include_str!("../res/test/config_with_bad_yaml.yaml");
|
||||
|
@ -295,6 +296,10 @@ mod tests {
|
|||
file
|
||||
}
|
||||
|
||||
fn variant_eq<T>(a: &T, b: &T) -> bool {
|
||||
std::mem::discriminant(a) == std::mem::discriminant(b)
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_config_file_not_found() {
|
||||
let config = Configs::load_config(Path::new("invalid/path"));
|
||||
|
@ -511,6 +516,6 @@ mod tests {
|
|||
|
||||
let config_set = ConfigSet::load(tmp_dir.path());
|
||||
assert!(config_set.is_err());
|
||||
assert_eq!(config_set.unwrap_err(), ConfigLoadError::NameDuplicate(specific_path2))
|
||||
assert!(variant_eq(&config_set.unwrap_err(), &ConfigLoadError::NameDuplicate(PathBuf::new())))
|
||||
}
|
||||
}
|
|
@ -253,21 +253,28 @@ mod tests {
|
|||
|
||||
let config_manager = RuntimeConfigManager::new(config_set.unwrap(), dummy_system_manager);
|
||||
|
||||
let sp1index = config_manager.set.specific
|
||||
.iter().position(|x| x.name == "myname1").unwrap();
|
||||
let sp2index = config_manager.set.specific
|
||||
.iter().position(|x| x.name == "myname2").unwrap();
|
||||
let sp3index = config_manager.set.specific
|
||||
.iter().position(|x| x.name == "myname3").unwrap();
|
||||
|
||||
assert_eq!(config_manager.exec_regexps.len(), 3);
|
||||
assert_eq!(config_manager.title_regexps.len(), 3);
|
||||
assert_eq!(config_manager.class_regexps.len(), 3);
|
||||
|
||||
assert!(config_manager.class_regexps[0].is_none());
|
||||
assert!(config_manager.class_regexps[1].is_some());
|
||||
assert!(config_manager.class_regexps[2].is_none());
|
||||
assert!(config_manager.class_regexps[sp1index].is_none());
|
||||
assert!(config_manager.class_regexps[sp2index].is_some());
|
||||
assert!(config_manager.class_regexps[sp3index].is_none());
|
||||
|
||||
assert!(config_manager.title_regexps[0].is_none());
|
||||
assert!(config_manager.title_regexps[1].is_some());
|
||||
assert!(config_manager.title_regexps[2].is_some());
|
||||
assert!(config_manager.title_regexps[sp1index].is_none());
|
||||
assert!(config_manager.title_regexps[sp2index].is_some());
|
||||
assert!(config_manager.title_regexps[sp3index].is_some());
|
||||
|
||||
assert!(config_manager.exec_regexps[0].is_some());
|
||||
assert!(config_manager.exec_regexps[1].is_none());
|
||||
assert!(config_manager.exec_regexps[2].is_none());
|
||||
assert!(config_manager.exec_regexps[sp1index].is_some());
|
||||
assert!(config_manager.exec_regexps[sp2index].is_none());
|
||||
assert!(config_manager.exec_regexps[sp3index].is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -297,21 +304,28 @@ mod tests {
|
|||
|
||||
let config_manager = RuntimeConfigManager::new(config_set.unwrap(), dummy_system_manager);
|
||||
|
||||
let sp1index = config_manager.set.specific
|
||||
.iter().position(|x| x.name == "myname1").unwrap();
|
||||
let sp2index = config_manager.set.specific
|
||||
.iter().position(|x| x.name == "myname2").unwrap();
|
||||
let sp3index = config_manager.set.specific
|
||||
.iter().position(|x| x.name == "myname3").unwrap();
|
||||
|
||||
assert_eq!(config_manager.exec_regexps.len(), 3);
|
||||
assert_eq!(config_manager.title_regexps.len(), 3);
|
||||
assert_eq!(config_manager.class_regexps.len(), 3);
|
||||
|
||||
assert!(config_manager.class_regexps[0].is_none());
|
||||
assert!(config_manager.class_regexps[1].is_some());
|
||||
assert!(config_manager.class_regexps[2].is_none());
|
||||
assert!(config_manager.class_regexps[sp1index].is_none());
|
||||
assert!(config_manager.class_regexps[sp2index].is_some());
|
||||
assert!(config_manager.class_regexps[sp3index].is_none());
|
||||
|
||||
assert!(config_manager.title_regexps[0].is_none());
|
||||
assert!(config_manager.title_regexps[1].is_none());
|
||||
assert!(config_manager.title_regexps[2].is_some());
|
||||
assert!(config_manager.title_regexps[sp1index].is_none());
|
||||
assert!(config_manager.title_regexps[sp2index].is_none());
|
||||
assert!(config_manager.title_regexps[sp3index].is_some());
|
||||
|
||||
assert!(config_manager.exec_regexps[0].is_none());
|
||||
assert!(config_manager.exec_regexps[1].is_none());
|
||||
assert!(config_manager.exec_regexps[2].is_none());
|
||||
assert!(config_manager.exec_regexps[sp1index].is_none());
|
||||
assert!(config_manager.exec_regexps[sp2index].is_none());
|
||||
assert!(config_manager.exec_regexps[sp3index].is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
Loading…
Reference in New Issue
Block a user