mirror of
https://github.com/jcreek/CosmicClash.git
synced 2026-09-11 19:43:43 +00:00
test: verify offline matchmaking pipeline
This commit is contained in:
@@ -45,6 +45,23 @@ func TestProposalResponseReplayIsStableAndPayloadReuseConflicts(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestReturnedProposalRetainsIdempotencyStateForChainedResponses(t *testing.T) {
|
||||
now := time.Unix(1000, 0)
|
||||
p, err := NewProposal("proposal-123456789", Ranked, []string{"a", "b", "c", "d", "e", "f"}, now)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
for _, playerID := range []string{"a", "b", "c", "d", "e", "f"} {
|
||||
p, err = p.Respond(playerID, "accept-"+playerID+"-123456", true, p.Revision, now)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
if p.State != Accepted || p.Revision != 6 {
|
||||
t.Fatalf("chained responses = %+v", p)
|
||||
}
|
||||
}
|
||||
|
||||
func TestProposalExpiryTimesOutPendingParticipantsAndClosesRace(t *testing.T) {
|
||||
now := time.Unix(1000, 0)
|
||||
p, err := NewProposal("proposal-123456789", Ranked, []string{"a", "b", "c", "d", "e", "f"}, now)
|
||||
|
||||
Reference in New Issue
Block a user