use super::*;
pub fn test_path() {
let _ = set_project_dir(get_exe_dir());
let project_dir = get_project_dir();
println!("项目目录: {:?}", project_dir.to_str());
let path = ZPath::new("test.txt");
println!("文件路径: {:?}", path.to_str());
println!("是否在当前目录下: {:?}", path.is_in_project_dir());
assert!(path.is_in_project_dir());
let path = ZPath::new("../aa/test.txt");
println!("文件路径: {:?}", path.to_str());
println!("是否在当前目录下: {:?}", path.is_in_project_dir());
assert!(!path.is_in_project_dir());
let path = ZPath::new("../deps/test.txt");
println!("文件路径: {:?}", path.to_str());
println!("是否在当前目录下: {:?}", path.is_in_project_dir());
assert!(path.is_in_project_dir());
let path = ZPath::new("c:\\xxx\\test.txt");
println!("文件路径: {:?}", path.to_str());
println!("是否在当前目录下: {:?}", path.is_in_project_dir());
assert!(!path.is_in_project_dir());
let path = ZPath::new("/other/path/test.txt");
println!("文件路径: {:?}", path.to_str());
println!("是否在当前目录下: {:?}", path.is_in_project_dir());
assert!(!path.is_in_project_dir());
}
pub fn test_dir() {
let path = get_work_dir();
println!("工作目录: {:?}", path.to_str());
let exe_dir = get_exe_dir();
println!("程序目录: {:?}", exe_dir.to_str());
}
pub fn project_dir_type() {
let path = get_project_dir();
println!("项目目录: {:?}", path.to_str());
let _ = set_project_dir(get_exe_dir());
let path = get_project_dir();
println!("项目目录: {:?}", path.to_str());
let _ = set_project_dir(get_work_dir());
let path = get_project_dir();
println!("项目目录: {:?}", path.to_str());
let tmp_dir = ZPath::from(get_tmp_dir().join("test_project_dir_type"));
let err = set_project_dir(tmp_dir.clone());
assert!(err.is_ok());
let path = get_project_dir();
println!("项目目录: {:?}", path.to_str());
assert_eq!(path.to_str(), tmp_dir.to_str());
}