integration tests
Some checks failed
CI / lint-typecheck (pull_request) Failing after 4m50s
CI / tests (pull_request) Has been skipped
CI / contract-tests (pull_request) Has been skipped
CI / e2e-tests (pull_request) Has been skipped
CI / comment-pr (pull_request) Has been skipped
CI / commit-types (pull_request) Has been skipped

This commit is contained in:
2026-01-22 23:55:28 +01:00
parent 853ec7b0ce
commit eaf51712a7
29 changed files with 2625 additions and 280 deletions

View File

@@ -11,7 +11,10 @@ import {
LeagueResolutionTimeMetrics,
LeagueComplexSuccessRateMetrics,
LeagueComplexResolutionTimeMetrics,
LeagueMember,
LeaguePendingRequest,
} from '../../../../core/leagues/application/ports/LeagueRepository';
import { LeagueStandingData } from '../../../../core/dashboard/application/ports/DashboardRepository';
export class InMemoryLeagueRepository implements LeagueRepository {
private leagues: Map<string, LeagueData> = new Map();
@@ -25,6 +28,9 @@ export class InMemoryLeagueRepository implements LeagueRepository {
private leagueResolutionTimeMetrics: Map<string, LeagueResolutionTimeMetrics> = new Map();
private leagueComplexSuccessRateMetrics: Map<string, LeagueComplexSuccessRateMetrics> = new Map();
private leagueComplexResolutionTimeMetrics: Map<string, LeagueComplexResolutionTimeMetrics> = new Map();
private leagueStandings: Map<string, LeagueStandingData[]> = new Map();
private leagueMembers: Map<string, LeagueMember[]> = new Map();
private leaguePendingRequests: Map<string, LeaguePendingRequest[]> = new Map();
async create(league: LeagueData): Promise<LeagueData> {
this.leagues.set(league.id, league);
@@ -194,6 +200,33 @@ export class InMemoryLeagueRepository implements LeagueRepository {
this.leagueResolutionTimeMetrics.clear();
this.leagueComplexSuccessRateMetrics.clear();
this.leagueComplexResolutionTimeMetrics.clear();
this.leagueStandings.clear();
this.leagueMembers.clear();
this.leaguePendingRequests.clear();
}
addLeagueStandings(driverId: string, standings: LeagueStandingData[]): void {
this.leagueStandings.set(driverId, standings);
}
async getLeagueStandings(driverId: string): Promise<LeagueStandingData[]> {
return this.leagueStandings.get(driverId) || [];
}
addLeagueMembers(leagueId: string, members: LeagueMember[]): void {
this.leagueMembers.set(leagueId, members);
}
async getLeagueMembers(leagueId: string): Promise<LeagueMember[]> {
return this.leagueMembers.get(leagueId) || [];
}
addPendingRequests(leagueId: string, requests: LeaguePendingRequest[]): void {
this.leaguePendingRequests.set(leagueId, requests);
}
async getPendingRequests(leagueId: string): Promise<LeaguePendingRequest[]> {
return this.leaguePendingRequests.get(leagueId) || [];
}
private createDefaultStats(leagueId: string): LeagueStats {