Fix build and code structure improvements. New but essential UI functionality. CI improvements. Documentation improvements. AI module improvements.
This commit is contained in:
@@ -24,7 +24,7 @@ public class InMemoryDigestSchedulerTests
|
||||
var schedule = CreateTestSchedule("schedule-1");
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.UpsertScheduleAsync(schedule);
|
||||
var result = await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.NotNull(result);
|
||||
@@ -37,12 +37,12 @@ public class InMemoryDigestSchedulerTests
|
||||
{
|
||||
// Arrange
|
||||
var schedule = CreateTestSchedule("schedule-1");
|
||||
await _scheduler.UpsertScheduleAsync(schedule);
|
||||
await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
var updated = schedule with { Name = "Updated Name" };
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.UpsertScheduleAsync(updated);
|
||||
var result = await _scheduler.UpsertScheduleAsync(updated, CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Equal("Updated Name", result.Name);
|
||||
@@ -53,10 +53,10 @@ public class InMemoryDigestSchedulerTests
|
||||
{
|
||||
// Arrange
|
||||
var schedule = CreateTestSchedule("schedule-1");
|
||||
await _scheduler.UpsertScheduleAsync(schedule);
|
||||
await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.GetScheduleAsync("tenant1", "schedule-1");
|
||||
var result = await _scheduler.GetScheduleAsync("tenant1", "schedule-1", CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.NotNull(result);
|
||||
@@ -67,7 +67,7 @@ public class InMemoryDigestSchedulerTests
|
||||
public async Task GetScheduleAsync_ReturnsNullForUnknown()
|
||||
{
|
||||
// Act
|
||||
var result = await _scheduler.GetScheduleAsync("tenant1", "unknown");
|
||||
var result = await _scheduler.GetScheduleAsync("tenant1", "unknown", CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Null(result);
|
||||
@@ -77,12 +77,12 @@ public class InMemoryDigestSchedulerTests
|
||||
public async Task GetSchedulesAsync_ReturnsTenantSchedules()
|
||||
{
|
||||
// Arrange
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-1", "tenant1"));
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-2", "tenant1"));
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-3", "tenant2"));
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-1", "tenant1"), CancellationToken.None);
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-2", "tenant1"), CancellationToken.None);
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-3", "tenant2"), CancellationToken.None);
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.GetSchedulesAsync("tenant1");
|
||||
var result = await _scheduler.GetSchedulesAsync("tenant1", CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Equal(2, result.Count);
|
||||
@@ -93,14 +93,14 @@ public class InMemoryDigestSchedulerTests
|
||||
public async Task DeleteScheduleAsync_RemovesSchedule()
|
||||
{
|
||||
// Arrange
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-1"));
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-1"), CancellationToken.None);
|
||||
|
||||
// Act
|
||||
var deleted = await _scheduler.DeleteScheduleAsync("tenant1", "schedule-1");
|
||||
var deleted = await _scheduler.DeleteScheduleAsync("tenant1", "schedule-1", CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.True(deleted);
|
||||
var result = await _scheduler.GetScheduleAsync("tenant1", "schedule-1");
|
||||
var result = await _scheduler.GetScheduleAsync("tenant1", "schedule-1", CancellationToken.None);
|
||||
Assert.Null(result);
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ public class InMemoryDigestSchedulerTests
|
||||
public async Task DeleteScheduleAsync_ReturnsFalseForUnknown()
|
||||
{
|
||||
// Act
|
||||
var deleted = await _scheduler.DeleteScheduleAsync("tenant1", "unknown");
|
||||
var deleted = await _scheduler.DeleteScheduleAsync("tenant1", "unknown", CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.False(deleted);
|
||||
@@ -122,13 +122,13 @@ public class InMemoryDigestSchedulerTests
|
||||
{
|
||||
CronExpression = "0 * * * * *" // Every minute
|
||||
};
|
||||
await _scheduler.UpsertScheduleAsync(schedule);
|
||||
await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
// Advance time past next run
|
||||
_timeProvider.Advance(TimeSpan.FromMinutes(2));
|
||||
|
||||
// Act
|
||||
var dueSchedules = await _scheduler.GetDueSchedulesAsync(_timeProvider.GetUtcNow());
|
||||
var dueSchedules = await _scheduler.GetDueSchedulesAsync(_timeProvider.GetUtcNow(), CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Single(dueSchedules);
|
||||
@@ -144,12 +144,12 @@ public class InMemoryDigestSchedulerTests
|
||||
Enabled = false,
|
||||
CronExpression = "0 * * * * *"
|
||||
};
|
||||
await _scheduler.UpsertScheduleAsync(schedule);
|
||||
await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
_timeProvider.Advance(TimeSpan.FromMinutes(2));
|
||||
|
||||
// Act
|
||||
var dueSchedules = await _scheduler.GetDueSchedulesAsync(_timeProvider.GetUtcNow());
|
||||
var dueSchedules = await _scheduler.GetDueSchedulesAsync(_timeProvider.GetUtcNow(), CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Empty(dueSchedules);
|
||||
@@ -163,15 +163,15 @@ public class InMemoryDigestSchedulerTests
|
||||
{
|
||||
CronExpression = "0 0 * * * *" // Every hour
|
||||
};
|
||||
await _scheduler.UpsertScheduleAsync(schedule);
|
||||
await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
var runTime = _timeProvider.GetUtcNow();
|
||||
|
||||
// Act
|
||||
await _scheduler.UpdateLastRunAsync("tenant1", "schedule-1", runTime);
|
||||
await _scheduler.UpdateLastRunAsync("tenant1", "schedule-1", runTime, CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
var updated = await _scheduler.GetScheduleAsync("tenant1", "schedule-1");
|
||||
var updated = await _scheduler.GetScheduleAsync("tenant1", "schedule-1", CancellationToken.None);
|
||||
Assert.NotNull(updated);
|
||||
Assert.Equal(runTime, updated.LastRunAt);
|
||||
Assert.NotNull(updated.NextRunAt);
|
||||
@@ -189,7 +189,7 @@ public class InMemoryDigestSchedulerTests
|
||||
};
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.UpsertScheduleAsync(schedule);
|
||||
var result = await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.NotNull(result.NextRunAt);
|
||||
@@ -205,7 +205,7 @@ public class InMemoryDigestSchedulerTests
|
||||
};
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.UpsertScheduleAsync(schedule);
|
||||
var result = await _scheduler.UpsertScheduleAsync(schedule, CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Null(result.NextRunAt);
|
||||
@@ -215,12 +215,12 @@ public class InMemoryDigestSchedulerTests
|
||||
public async Task GetSchedulesAsync_OrdersByName()
|
||||
{
|
||||
// Arrange
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-c") with { Name = "Charlie" });
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-a") with { Name = "Alpha" });
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-b") with { Name = "Bravo" });
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-c") with { Name = "Charlie" }, CancellationToken.None);
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-a") with { Name = "Alpha" }, CancellationToken.None);
|
||||
await _scheduler.UpsertScheduleAsync(CreateTestSchedule("schedule-b") with { Name = "Bravo" }, CancellationToken.None);
|
||||
|
||||
// Act
|
||||
var result = await _scheduler.GetSchedulesAsync("tenant1");
|
||||
var result = await _scheduler.GetSchedulesAsync("tenant1", CancellationToken.None);
|
||||
|
||||
// Assert
|
||||
Assert.Equal(3, result.Count);
|
||||
|
||||
Reference in New Issue
Block a user