From b425173165e6ed206f36ac8ee36463b96eb6f3d0 Mon Sep 17 00:00:00 2001 From: Chris Parsons Date: Fri, 17 Apr 2026 11:39:10 -0700 Subject: [PATCH] Fix lint errors in simulator-config tests and probability-engine - Replace non-null assertions (`!`) with optional chaining (`?.`) in simulator-config tests - Remove redundant type annotations on default parameters in probability-engine Co-Authored-By: Claude Sonnet 4.6 --- app/services/probability-engine.ts | 8 ++++---- .../__tests__/simulator-config.test.ts | 18 +++++++++--------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/app/services/probability-engine.ts b/app/services/probability-engine.ts index 4201069..e7c7629 100644 --- a/app/services/probability-engine.ts +++ b/app/services/probability-engine.ts @@ -319,8 +319,8 @@ export function calculatePredictionError( export function projectedWinsToElo( projectedWins: number, totalGames: number, - parityFactor: number = 400, - averageElo: number = 1500 + parityFactor = 400, + averageElo = 1500 ): number { if (totalGames <= 0) { throw new Error('Total games must be positive'); @@ -362,8 +362,8 @@ export function projectedWinsToElo( export function eloToProjectedWins( elo: number, totalGames: number, - parityFactor: number = 400, - averageElo: number = 1500 + parityFactor = 400, + averageElo = 1500 ): number { const winProb = 1 / (1 + Math.pow(10, (averageElo - elo) / parityFactor)); return winProb * totalGames; diff --git a/app/services/simulations/__tests__/simulator-config.test.ts b/app/services/simulations/__tests__/simulator-config.test.ts index e005424..fb7f0d8 100644 --- a/app/services/simulations/__tests__/simulator-config.test.ts +++ b/app/services/simulations/__tests__/simulator-config.test.ts @@ -6,35 +6,35 @@ describe("simulator-config", () => { it("returns config for afl_bracket", () => { const config = getSimulatorConfig("afl_bracket"); expect(config).not.toBeNull(); - expect(config!.seasonGames).toBe(23); - expect(config!.parityFactor).toBe(450); - expect(config!.averageOpponentElo).toBe(1500); + expect(config?.seasonGames).toBe(23); + expect(config?.parityFactor).toBe(450); + expect(config?.averageOpponentElo).toBe(1500); }); it("returns config for nfl_bracket", () => { const config = getSimulatorConfig("nfl_bracket"); expect(config).not.toBeNull(); - expect(config!.seasonGames).toBe(17); - expect(config!.parityFactor).toBe(400); + expect(config?.seasonGames).toBe(17); + expect(config?.parityFactor).toBe(400); }); it("returns config for nba_bracket", () => { const config = getSimulatorConfig("nba_bracket"); expect(config).not.toBeNull(); - expect(config!.seasonGames).toBe(82); + expect(config?.seasonGames).toBe(82); }); it("returns config for nhl_bracket", () => { const config = getSimulatorConfig("nhl_bracket"); expect(config).not.toBeNull(); - expect(config!.seasonGames).toBe(82); - expect(config!.parityFactor).toBe(1000); + expect(config?.seasonGames).toBe(82); + expect(config?.parityFactor).toBe(1000); }); it("returns config for mlb_bracket", () => { const config = getSimulatorConfig("mlb_bracket"); expect(config).not.toBeNull(); - expect(config!.seasonGames).toBe(162); + expect(config?.seasonGames).toBe(162); }); it("returns null for snooker_bracket", () => {