using ClawdDotNet.Core.Tasks; using Shouldly; namespace ClawdDotNet.Core.Tests.Tasks; /// /// The assignee determines how a due task becomes a run (T7). The interpretation /// must be unambiguous — whether an agent runs fresh or with context depends on it. /// public sealed class TaskAssigneeTests { [Theory] [InlineData("@human", TaskAssigneeKind.Human)] [InlineData("@new", TaskAssigneeKind.New)] [InlineData("@new:crawler", TaskAssigneeKind.New)] [InlineData("@crawler", TaskAssigneeKind.Agent)] public void Die_Art_wird_richtig_erkannt(string assignee, TaskAssigneeKind expected) => TaskAssignee.KindOf(assignee).ShouldBe(expected); [Theory] [InlineData("@crawler", "crawler")] [InlineData("@new:crawler", "crawler")] [InlineData("@new", "")] // fresh run without a named agent [InlineData("@human", "")] public void Die_Agent_Id_wird_richtig_herausgezogen(string assignee, string expected) => TaskAssignee.AgentId(assignee).ShouldBe(expected); }