test(data): queue skips Planning/Planned/Draft
This commit is contained in:
@@ -282,4 +282,29 @@ public sealed class TaskRepositoryPlanningTests : IDisposable
|
|||||||
|
|
||||||
Assert.False(ok);
|
Assert.False(ok);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public async Task GetNextQueuedAgentTask_SkipsDraftPlanningPlanned()
|
||||||
|
{
|
||||||
|
var listId = await CreateListAsync();
|
||||||
|
var agentTagId = await _tags.GetOrCreateAsync("agent");
|
||||||
|
|
||||||
|
async Task<TaskEntity> T(TaskStatus s, bool withTag, string? parent = null)
|
||||||
|
{
|
||||||
|
var t = MakeTask(listId, s, parentId: parent);
|
||||||
|
await _tasks.AddAsync(t);
|
||||||
|
if (withTag) await _tasks.AddTagAsync(t.Id, agentTagId);
|
||||||
|
return t;
|
||||||
|
}
|
||||||
|
|
||||||
|
var planning = await T(TaskStatus.Planning, withTag: true);
|
||||||
|
var planned = await T(TaskStatus.Planned, withTag: true);
|
||||||
|
var draft = await T(TaskStatus.Draft, withTag: true, parent: planning.Id);
|
||||||
|
var queued = await T(TaskStatus.Queued, withTag: true);
|
||||||
|
|
||||||
|
var picked = await _tasks.GetNextQueuedAgentTaskAsync(DateTime.UtcNow);
|
||||||
|
|
||||||
|
Assert.NotNull(picked);
|
||||||
|
Assert.Equal(queued.Id, picked!.Id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user