refactor(udt-011): Quartz jobs usan TimeProvider (closes #24) #28

Merged
dmolinari merged 4 commits from fix/UDT-011-quartz-jobs-timeprovider into main 2026-04-18 14:08:11 +00:00
Showing only changes of commit ff912cc6a9 - Show all commits

View File

@@ -22,15 +22,18 @@ public sealed class AuditIntegrityCheckJob : IJob
private readonly SqlConnectionFactory _factory;
private readonly ISecurityEventLogger _security;
private readonly ILogger<AuditIntegrityCheckJob> _logger;
private readonly TimeProvider _timeProvider;
public AuditIntegrityCheckJob(
SqlConnectionFactory factory,
ISecurityEventLogger security,
ILogger<AuditIntegrityCheckJob> logger)
ILogger<AuditIntegrityCheckJob> logger,
TimeProvider timeProvider)
{
_factory = factory;
_security = security;
_logger = logger;
_timeProvider = timeProvider;
}
public async Task Execute(IJobExecutionContext context)
@@ -50,7 +53,7 @@ public sealed class AuditIntegrityCheckJob : IJob
failures.Add($"system_versioning_missing:{string.Join(',', missing)}");
// 2. Next 3 months have partitions in both event tables
var now = DateTime.UtcNow;
var now = _timeProvider.GetUtcNow().UtcDateTime;
var required = new[]
{
new DateTime(now.Year, now.Month, 1, 0, 0, 0, DateTimeKind.Utc).AddMonths(1),