Files
pixstrip/pixstrip-core/tests/config_tests.rs
lashman be7d345aa9 Add storage module for presets, config, session, and history persistence
Preset save/load/list/delete/import/export, config JSON persistence,
session state save/restore, and processing history log with append/clear.
All stored as JSON under ~/.config/pixstrip/.
2026-03-06 02:14:57 +02:00

28 lines
943 B
Rust

use pixstrip_core::config::*;
#[test]
fn default_config() {
let config = AppConfig::default();
assert_eq!(config.output_subfolder, "processed");
assert_eq!(config.overwrite_behavior, OverwriteBehavior::Ask);
assert!(config.remember_settings);
assert_eq!(config.skill_level, SkillLevel::Simple);
assert_eq!(config.thread_count, ThreadCount::Auto);
assert_eq!(config.error_behavior, ErrorBehavior::SkipAndContinue);
}
#[test]
fn config_serialization_roundtrip() {
let config = AppConfig::default();
let json = serde_json::to_string(&config).unwrap();
let deserialized: AppConfig = serde_json::from_str(&json).unwrap();
assert_eq!(deserialized.output_subfolder, config.output_subfolder);
assert_eq!(deserialized.overwrite_behavior, config.overwrite_behavior);
}
#[test]
fn skill_level_toggle() {
assert!(!SkillLevel::Simple.is_advanced());
assert!(SkillLevel::Detailed.is_advanced());
}