fix issues in core

This commit is contained in:
2025-12-23 15:38:50 +01:00
parent df5c20c5cc
commit 120d3bb1a1
125 changed files with 1005 additions and 793 deletions

View File

@@ -7,7 +7,6 @@ import {
} from './GetTeamsLeaderboardUseCase';
import { ITeamRepository } from '../../domain/repositories/ITeamRepository';
import { ITeamMembershipRepository } from '../../domain/repositories/ITeamMembershipRepository';
import { IDriverRepository } from '../../domain/repositories/IDriverRepository';
import { Team } from '../../domain/entities/Team';
import type { Logger } from '@core/shared/application';
import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort';
@@ -21,9 +20,6 @@ describe('GetTeamsLeaderboardUseCase', () => {
let teamMembershipRepository: {
getTeamMembers: Mock;
};
let driverRepository: {
findById: Mock;
};
let getDriverStats: Mock;
let logger: {
debug: Mock;
@@ -40,9 +36,6 @@ describe('GetTeamsLeaderboardUseCase', () => {
teamMembershipRepository = {
getTeamMembers: vi.fn(),
};
driverRepository = {
findById: vi.fn(),
};
getDriverStats = vi.fn();
logger = {
debug: vi.fn(),
@@ -52,12 +45,12 @@ describe('GetTeamsLeaderboardUseCase', () => {
};
output = {
present: vi.fn(),
} as any;
} as unknown as UseCaseOutputPort<GetTeamsLeaderboardResult> & { present: Mock };
useCase = new GetTeamsLeaderboardUseCase(
teamRepository as unknown as ITeamRepository,
teamMembershipRepository as unknown as ITeamMembershipRepository,
driverRepository as unknown as IDriverRepository,
getDriverStats,
getDriverStats as unknown as (driverId: string) => { rating: number | null; wins: number; totalRaces: number } | null,
logger as unknown as Logger,
output,
);
@@ -109,7 +102,9 @@ describe('GetTeamsLeaderboardUseCase', () => {
expect(result.unwrap()).toBeUndefined();
expect(output.present).toHaveBeenCalledTimes(1);
const presented = (output.present as unknown as Mock).mock.calls[0][0] as GetTeamsLeaderboardResult;
const presentedRaw = (output.present as unknown as Mock).mock.calls[0]?.[0];
expect(presentedRaw).toBeDefined();
const presented = presentedRaw as GetTeamsLeaderboardResult;
expect(presented.recruitingCount).toBe(2); // both teams are recruiting
expect(presented.items).toHaveLength(2);