use crate::library::get_sync_status; use crate::library::queries::GetSyncStatusQuery; #[path = "helpers.rs"] mod helpers; #[tokio::test] async fn get_sync_status_empty() { let (_cmd, query, _repo) = helpers::make_deps(); let entries = get_sync_status::execute(&query, GetSyncStatusQuery) .await .unwrap(); assert!(entries.is_empty()); } #[tokio::test] async fn get_sync_status_after_sync() { let (cmd, query, _repo) = helpers::make_deps(); // Start a sync log entry let log_id = domain::ports::LibraryCommand::log_sync_start(&*cmd.library_command, "test") .await .unwrap(); // Finish it let result = domain::models::LibrarySyncResult::new("test", 42, 500); domain::ports::LibraryCommand::log_sync_finish(&*cmd.library_command, log_id, &result) .await .unwrap(); let entries = get_sync_status::execute(&query, GetSyncStatusQuery) .await .unwrap(); assert_eq!(entries.len(), 1); assert_eq!(entries[0].provider_id(), "test"); assert_eq!(entries[0].items_found(), 42); assert_eq!(entries[0].status(), "success"); }