fix: bind queue idempotency to compatibility

This commit is contained in:
Josh Creek
2026-08-31 22:51:00 +01:00
parent 585056ccc3
commit 99680dbf6f
4 changed files with 62 additions and 2 deletions
+15
View File
@@ -77,6 +77,21 @@ func TestQueueCreateIdempotencyIncludesCandidatePayload(t *testing.T) {
if _, err := q.Create("player-a", "ticket-a", "create-key-123456", changed, now); !errors.Is(err, ErrConflict) {
t.Fatalf("changed create payload error = %v", err)
}
changed = base
changed.Playlist = Ranked
if _, err := q.Create("player-a", "ticket-a", "create-key-123456", changed, now); !errors.Is(err, ErrConflict) {
t.Fatalf("changed playlist payload error = %v", err)
}
changed = base
changed.ClientBuild = "build-2"
if _, err := q.Create("player-a", "ticket-a", "create-key-123456", changed, now); !errors.Is(err, ErrConflict) {
t.Fatalf("changed build payload error = %v", err)
}
changed = base
changed.ProtocolVersion = 2
if _, err := q.Create("player-a", "ticket-a", "create-key-123456", changed, now); !errors.Is(err, ErrConflict) {
t.Fatalf("changed protocol payload error = %v", err)
}
}
func TestQueueCreateRejectsCandidateOwnedByAnotherPlayer(t *testing.T) {