This commit is contained in:
2025-12-16 11:52:26 +01:00
parent ce82b7822b
commit 9a891ac8b3
586 changed files with 1320 additions and 1563 deletions

View File

@@ -1,27 +1,27 @@
import { describe, it, expect, beforeEach } from 'vitest';
import { RecalculateChampionshipStandingsUseCase } from '@gridpilot/racing/application/use-cases/RecalculateChampionshipStandingsUseCase';
import type { ISeasonRepository } from '@gridpilot/racing/domain/repositories/ISeasonRepository';
import type { ILeagueScoringConfigRepository } from '@gridpilot/racing/domain/repositories/ILeagueScoringConfigRepository';
import type { IRaceRepository } from '@gridpilot/racing/domain/repositories/IRaceRepository';
import type { IResultRepository } from '@gridpilot/racing/domain/repositories/IResultRepository';
import type { IPenaltyRepository } from '@gridpilot/racing/domain/repositories/IPenaltyRepository';
import type { IChampionshipStandingRepository } from '@gridpilot/racing/domain/repositories/IChampionshipStandingRepository';
import { RecalculateChampionshipStandingsUseCase } from '@core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase';
import type { ISeasonRepository } from '@core/racing/domain/repositories/ISeasonRepository';
import type { ILeagueScoringConfigRepository } from '@core/racing/domain/repositories/ILeagueScoringConfigRepository';
import type { IRaceRepository } from '@core/racing/domain/repositories/IRaceRepository';
import type { IResultRepository } from '@core/racing/domain/repositories/IResultRepository';
import type { IPenaltyRepository } from '@core/racing/domain/repositories/IPenaltyRepository';
import type { IChampionshipStandingRepository } from '@core/racing/domain/repositories/IChampionshipStandingRepository';
import { Season } from '@gridpilot/racing/domain/entities/Season';
import type { LeagueScoringConfig } from '@gridpilot/racing/domain/entities/LeagueScoringConfig';
import { Race } from '@gridpilot/racing/domain/entities/Race';
import { Result } from '@gridpilot/racing/domain/entities/Result';
import type { Penalty } from '@gridpilot/racing/domain/entities/Penalty';
import type { ChampionshipStanding } from '@gridpilot/racing/domain/entities/ChampionshipStanding';
import type { ChampionshipConfig } from '@gridpilot/racing/domain/types/ChampionshipConfig';
import { EventScoringService } from '@gridpilot/racing/domain/services/EventScoringService';
import { DropScoreApplier } from '@gridpilot/racing/domain/services/DropScoreApplier';
import { ChampionshipAggregator } from '@gridpilot/racing/domain/services/ChampionshipAggregator';
import { PointsTable } from '@gridpilot/racing/domain/value-objects/PointsTable';
import type { SessionType } from '@gridpilot/racing/domain/types/SessionType';
import type { BonusRule } from '@gridpilot/racing/domain/types/BonusRule';
import type { DropScorePolicy } from '@gridpilot/racing/domain/types/DropScorePolicy';
import { Season } from '@core/racing/domain/entities/Season';
import type { LeagueScoringConfig } from '@core/racing/domain/entities/LeagueScoringConfig';
import { Race } from '@core/racing/domain/entities/Race';
import { Result } from '@core/racing/domain/entities/Result';
import type { Penalty } from '@core/racing/domain/entities/Penalty';
import type { ChampionshipStanding } from '@core/racing/domain/entities/ChampionshipStanding';
import type { ChampionshipConfig } from '@core/racing/domain/types/ChampionshipConfig';
import { EventScoringService } from '@core/racing/domain/services/EventScoringService';
import { DropScoreApplier } from '@core/racing/domain/services/DropScoreApplier';
import { ChampionshipAggregator } from '@core/racing/domain/services/ChampionshipAggregator';
import { PointsTable } from '@core/racing/domain/value-objects/PointsTable';
import type { SessionType } from '@core/racing/domain/types/SessionType';
import type { BonusRule } from '@core/racing/domain/types/BonusRule';
import type { DropScorePolicy } from '@core/racing/domain/types/DropScorePolicy';
class InMemorySeasonRepository implements ISeasonRepository {
private seasons: Season[] = [];