package api import "testing" func TestTierFromRank(t *testing.T) { cases := []struct { rank, total int want string }{ {1, 1, "champion"}, {1, 100, "champion"}, {1, 0, "bronze"}, // zero total → bronze (guard) {0, 100, "bronze"}, // zero rank → bronze (guard) {10, 100, "gold"}, // exactly 10% {11, 100, "silver"}, // 11% {30, 100, "silver"}, // exactly 30% {31, 100, "bronze"}, // 31% {5, 50, "gold"}, // 10% {15, 50, "silver"}, // exactly 30% {16, 50, "bronze"}, // 32% → bronze {50, 100, "bronze"}, {2, 10, "silver"}, // 20% → silver {1, 10, "champion"}, } for _, c := range cases { got := tierFromRank(c.rank, c.total) if got != c.want { t.Errorf("tierFromRank(%d, %d) = %q; want %q", c.rank, c.total, got, c.want) } } }