brackt/app/services/simulations/__tests__/brackt-simulator.test.ts
Chris Parsons 5b03b22267
Add Brackt as a league-private meta-sport (#200) (#377)
Commissioners can add Brackt to any league. Each team drafts one manager
from their own league; at season end, that manager's final overall fantasy
ranking earns placement points. Resolution fires automatically when all
other sports finalize.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 20:31:44 -07:00

24 lines
942 B
TypeScript

import { describe, expect, it } from "vitest";
import { harvillePlacementProbabilities } from "../brackt-simulator";
describe("BracktSimulator", () => {
it("returns uniform placement probabilities when all weights are zero", () => {
const probabilities = harvillePlacementProbabilities([0, 0, 0, 0, 0, 0]);
expect(probabilities).toHaveLength(6);
for (const row of probabilities) {
expect(row).toHaveLength(6);
for (const probability of row) {
expect(probability).toBeCloseTo(1 / 6, 5);
}
}
});
it("gives higher first-place probability to higher projected weights", () => {
const probabilities = harvillePlacementProbabilities([10, 20, 40]);
expect(probabilities[2][0]).toBeGreaterThan(probabilities[1][0]);
expect(probabilities[1][0]).toBeGreaterThan(probabilities[0][0]);
expect(probabilities[0][0] + probabilities[1][0] + probabilities[2][0]).toBeCloseTo(1, 5);
});
});