refactor(securestoremanager): add platform service abstractions and constants

Implement deferred code review findings:
- Add IDialogService/IClipboardService interfaces for testable platform operations
- Create AvaloniaDialogService and AvaloniaClipboardService implementations
- Extract dialog strings and file extensions to centralized Constants classes
- Refactor ViewModels to use DI instead of event delegates
- Update tests to use mock services
This commit is contained in:
Joseph Doherty
2026-01-19 16:54:35 -05:00
parent 1c546c111a
commit fbe58a81e4
33 changed files with 1790 additions and 298 deletions
@@ -206,7 +206,7 @@ public class ScheduleCheckerTests
tasks[0].MinimumDt.ShouldNotBeNull();
// Expected: lastDaily.EndDT - (3 * 1440 min) = lastDaily.EndDT - 3 days
var expectedMinimumDt = lastDaily.EndDt.AddMinutes(-3 * 1440);
var expectedMinimumDt = lastDaily.EndDt!.Value.AddMinutes(-3 * 1440);
tasks[0].MinimumDt!.Value.ShouldBe(expectedMinimumDt, TimeSpan.FromSeconds(1));
}
@@ -242,7 +242,7 @@ public class ScheduleCheckerTests
tasks[0].MinimumDt.ShouldNotBeNull();
// Hourly uses hourly's timestamp and hourly's interval for lookback calculation
var expectedMinimumDt = lastHourly.EndDt.AddMinutes(-3 * 60);
var expectedMinimumDt = lastHourly.EndDt!.Value.AddMinutes(-3 * 60);
tasks[0].MinimumDt!.Value.ShouldBe(expectedMinimumDt, TimeSpan.FromSeconds(1));
}
@@ -271,7 +271,7 @@ public class ScheduleCheckerTests
var tasks = await _sut.GetPendingTasksAsync();
// Assert
var expectedMinimumDt = lastDaily.EndDt.AddMinutes(-5 * 1440);
var expectedMinimumDt = lastDaily.EndDt!.Value.AddMinutes(-5 * 1440);
tasks[0].MinimumDt!.Value.ShouldBe(expectedMinimumDt, TimeSpan.FromSeconds(1));
}