added tests

This commit is contained in:
2026-05-06 14:40:58 -06:00
parent 4004312994
commit 10437c02ca
8 changed files with 1303 additions and 15 deletions

View File

@ -139,3 +139,52 @@ pub fn delete_model(path: &str) -> Result<(), String> {
Ok(())
}
#[cfg(test)]
mod tests {
use super::*;
use std::path::PathBuf;
#[test]
fn test_dir_size_empty() {
let size = dir_size(&PathBuf::from("/nonexistent/path/12345"));
assert_eq!(size, 0);
}
#[test]
fn test_scan_whisper_models_empty() {
let models = scan_whisper_models();
// In CI there won't be any whisper models
// Just verify it doesn't panic
assert!(models.len() >= 0);
}
#[test]
fn test_scan_llm_models_empty() {
let models = scan_llm_models(&PathBuf::from("/nonexistent/app_data"));
assert!(models.is_empty());
}
#[test]
fn test_list_models_empty() {
let models = list_models(&PathBuf::from("/nonexistent/app_data"));
// No models should be found in a non-existent directory
let whisper_models = models.iter().filter(|m| m.kind == "whisper").count();
let llm_models = models.iter().filter(|m| m.kind == "llm").count();
assert_eq!(llm_models, 0);
// whisper models may or may not exist on dev machine
assert!(whisper_models >= 0);
}
#[test]
fn test_delete_model_nonexistent() {
let result = delete_model("/nonexistent/model/path.gguf");
assert!(result.is_err());
}
#[test]
fn test_delete_model_empty_path() {
let result = delete_model("");
assert!(result.is_err());
}
}