package outbox import ( "testing" "time" ) func TestRetryDelayIsExponentialAndCapped(t *testing.T) { tests := []struct { attempt int want time.Duration }{{1, time.Second}, {2, 2 * time.Second}, {3, 4 * time.Second}, {20, 5 * time.Second}} for _, test := range tests { if got := retryDelay(test.attempt, 5*time.Second); got != test.want { t.Fatalf("attempt %d: got %s, want %s", test.attempt, got, test.want) } } }