test(event-subscriber): ratchet projector mutation baseline to 100% (refs #7)
Sharpen the projector tests so Stryker has no survivors (was 75%): assert a replayed delivery never reaches the store (upsert count, not just row count), that two distinct zaken get distinct rows (pins the idempotency key), that rebuild clears stale rows, and a Theory over wrong kanaal/resource/actie combinations (pins the zaken/zaak/create guard). Add the per-service Stryker config + solution; break threshold 90 (CLAUDE.md §5). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -20,8 +20,13 @@ internal sealed class InMemoryProjectionStore : IProjectionStore
|
||||
{
|
||||
private readonly Dictionary<string, RegisterEntry> _byId = [];
|
||||
|
||||
/// <summary>How many times a write was attempted — lets a test prove a deduped delivery
|
||||
/// never reaches the store (an idempotent upsert hides the difference in row count alone).</summary>
|
||||
public int UpsertCount { get; private set; }
|
||||
|
||||
public Task UpsertAsync(RegisterEntry entry, CancellationToken ct = default)
|
||||
{
|
||||
UpsertCount++;
|
||||
_byId[entry.Id] = entry;
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user