Files
work-club-manager/.sisyphus/evidence/task-4-state-machine-valid.txt
WorkClub Automation ba024c45be feat(domain): add core entities — Club, Member, WorkItem, Shift with state machine
- Create domain entities in WorkClub.Domain/Entities: Club, Member, WorkItem, Shift, ShiftSignup
- Implement enums: SportType, ClubRole, WorkItemStatus
- Add ITenantEntity interface for multi-tenancy support
- Implement state machine validation on WorkItem with C# 14 switch expressions
- Valid transitions: Open→Assigned→InProgress→Review→Done, Review→InProgress (rework)
- All invalid transitions throw InvalidOperationException
- TDD approach: Write tests first, 12/12 passing
- Use required properties with explicit Guid/Guid? for foreign keys
- DateTimeOffset for timestamps (timezone-aware, multi-tenant friendly)
- RowVersion byte[] for optimistic concurrency control
- No navigation properties yet (deferred to EF Core task)
- No domain events or validation attributes (YAGNI for MVP)
2026-03-03 14:09:25 +01:00

23 lines
1.5 KiB
Plaintext

Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Open_ToAssigned_Succeeds [5 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.InProgress_ToOpen_Throws [1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.CanTransitionTo_InvalidTransition_ReturnsFalse [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.CanTransitionTo_ValidTransition_ReturnsTrue [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Assigned_ToInProgress_Succeeds [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Review_ToInProgress_Succeeds [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Assigned_ToDone_Throws [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.InProgress_ToReview_Succeeds [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Open_ToInProgress_Throws [< 1 ms]
[xUnit.net 00:00:00.13] Finished: WorkClub.Tests.Unit
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Done_ToAnyStatus_Throws [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Review_ToDone_Succeeds [< 1 ms]
Bestanden WorkClub.Tests.Unit.Domain.WorkItemStatusTests.Open_ToDone_Throws [< 1 ms]
Der Testlauf war erfolgreich.
Gesamtzahl Tests: 12
Bestanden: 12
Gesamtzeit: 0,4879 Sekunden
1>Die Erstellung von Projekt "/Users/mastermito/Dev/opencode/backend/WorkClub.Tests.Unit/WorkClub.Tests.Unit.csproj" ist abgeschlossen (VSTest Ziel(e)).
Der Buildvorgang wurde erfolgreich ausgeführt.