package result import ( "testing" "github.com/SamuelTariku/FortuneBet-Backend/internal/domain" ) func TestEvaluateFullTimeResult(t *testing.T) { tests := []struct { name string outcome domain.BetOutcome score struct{ Home, Away int } expected domain.OutcomeStatus }{ {"Home win", domain.BetOutcome{OddName: "1"}, struct{ Home, Away int }{2, 1}, domain.OUTCOME_STATUS_WIN}, {"Away win", domain.BetOutcome{OddName: "2"}, struct{ Home, Away int }{1, 2}, domain.OUTCOME_STATUS_WIN}, {"Draw", domain.BetOutcome{OddName: "Draw"}, struct{ Home, Away int }{1, 1}, domain.OUTCOME_STATUS_WIN}, {"Home selected, but Draw", domain.BetOutcome{OddName: "1"}, struct{ Home, Away int }{1, 1}, domain.OUTCOME_STATUS_LOSS}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { status, _ := evaluateFullTimeResult(tt.outcome, tt.score) if status != tt.expected { t.Errorf("expected %d, got %d", tt.expected, status) } }) } }