feat(ui): complete Avalonia UI port with 7 main pages, tool settings & top MenuBar

This commit is contained in:
Richard
2026-08-10 10:48:34 +02:00
parent a0e18d2a57
commit b5bf97ae74
187 changed files with 20054 additions and 882 deletions
@@ -0,0 +1,27 @@
using ClawdDotNet.Core.Tasks;
using Shouldly;
namespace ClawdDotNet.Core.Tests.Tasks;
/// <summary>
/// Der Assignee bestimmt, wie eine fällige Aufgabe zu einem Lauf wird (T7). Die Deutung
/// muss eindeutig sein — davon hängt ab, ob ein Agent frisch oder mit Kontext läuft.
/// </summary>
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", "")] // frischer Lauf ohne benannten Agenten
[InlineData("@human", "")]
public void Die_Agent_Id_wird_richtig_herausgezogen(string assignee, string expected)
=> TaskAssignee.AgentId(assignee).ShouldBe(expected);
}