diff --git a/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.test.ts b/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.test.ts index 7b5509831..6093c7fde 100644 --- a/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.test.ts +++ b/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.test.ts @@ -11,7 +11,7 @@ import { RatingSnapshotCalculator } from '../../domain/services/RatingSnapshotCa import { AdminVoteSessionRepository } from '../../domain/repositories/AdminVoteSessionRepository'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; -import { AdminVoteSession, AdminVoteOutcome } from '../../domain/entities/AdminVoteSession'; +import { AdminVoteOutcome } from '../../domain/entities/AdminVoteSession'; // Mock repositories const createMockRepositories = () => ({ diff --git a/core/leagues/application/use-cases/DemoteAdminUseCase.test.ts b/core/leagues/application/use-cases/DemoteAdminUseCase.test.ts index 18d4a0bd3..3a4224fa5 100644 --- a/core/leagues/application/use-cases/DemoteAdminUseCase.test.ts +++ b/core/leagues/application/use-cases/DemoteAdminUseCase.test.ts @@ -1,7 +1,7 @@ import { describe, it, expect, vi, beforeEach, Mock } from 'vitest'; import { DemoteAdminUseCase } from './DemoteAdminUseCase'; import { LeagueRepository } from '../ports/LeagueRepository'; -import { DriverRepository } from '../../racing/domain/repositories/DriverRepository'; +import { DriverRepository } from '../../../racing/domain/repositories/DriverRepository'; import { LeagueEventPublisher } from '../ports/LeagueEventPublisher'; describe('DemoteAdminUseCase', () => { @@ -49,31 +49,13 @@ describe('DemoteAdminUseCase', () => { }; mockDriverRepository = { findById: vi.fn() as unknown as Mock, - findByName: vi.fn() as unknown as Mock, - findByEmail: vi.fn() as unknown as Mock, - search: vi.fn() as unknown as Mock, + findByIRacingId: vi.fn() as unknown as Mock, + findAll: vi.fn() as unknown as Mock, + create: vi.fn() as unknown as Mock, update: vi.fn() as unknown as Mock, delete: vi.fn() as unknown as Mock, - getStats: vi.fn() as unknown as Mock, - updateStats: vi.fn() as unknown as Mock, - getPerformanceMetrics: vi.fn() as unknown as Mock, - updatePerformanceMetrics: vi.fn() as unknown as Mock, - getRatingMetrics: vi.fn() as unknown as Mock, - updateRatingMetrics: vi.fn() as unknown as Mock, - getTrendMetrics: vi.fn() as unknown as Mock, - updateTrendMetrics: vi.fn() as unknown as Mock, - getSuccessRateMetrics: vi.fn() as unknown as Mock, - updateSuccessRateMetrics: vi.fn() as unknown as Mock, - getResolutionTimeMetrics: vi.fn() as unknown as Mock, - updateResolutionTimeMetrics: vi.fn() as unknown as Mock, - getComplexSuccessRateMetrics: vi.fn() as unknown as Mock, - updateComplexSuccessRateMetrics: vi.fn() as unknown as Mock, - getComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, - updateComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, - getDriverMemberships: vi.fn() as unknown as Mock, - addDriverMembership: vi.fn() as unknown as Mock, - updateDriverMembership: vi.fn() as unknown as Mock, - removeDriverMembership: vi.fn() as unknown as Mock, + exists: vi.fn() as unknown as Mock, + existsByIRacingId: vi.fn() as unknown as Mock, }; mockEventPublisher = { emitLeagueCreated: vi.fn() as unknown as Mock, diff --git a/core/leagues/application/use-cases/GetLeagueRosterUseCase.test.ts b/core/leagues/application/use-cases/GetLeagueRosterUseCase.test.ts index cbbb7c44b..02a61c330 100644 --- a/core/leagues/application/use-cases/GetLeagueRosterUseCase.test.ts +++ b/core/leagues/application/use-cases/GetLeagueRosterUseCase.test.ts @@ -1,9 +1,11 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { describe, it, expect, vi, beforeEach, Mock } from 'vitest'; import { GetLeagueRosterUseCase } from './GetLeagueRosterUseCase'; +import { LeagueRepository } from '../ports/LeagueRepository'; +import { LeagueEventPublisher } from '../ports/LeagueEventPublisher'; describe('GetLeagueRosterUseCase', () => { - let mockLeagueRepository: any; - let mockEventPublisher: any; + let mockLeagueRepository: LeagueRepository; + let mockEventPublisher: LeagueEventPublisher; let useCase: GetLeagueRosterUseCase; const mockLeague = { id: 'league-1' }; @@ -18,12 +20,53 @@ describe('GetLeagueRosterUseCase', () => { beforeEach(() => { mockLeagueRepository = { - findById: vi.fn().mockResolvedValue(mockLeague), - getLeagueMembers: vi.fn().mockResolvedValue(mockMembers), - getPendingRequests: vi.fn().mockResolvedValue(mockRequests), + create: vi.fn() as unknown as Mock, + findById: vi.fn().mockResolvedValue(mockLeague) as unknown as Mock, + findByName: vi.fn() as unknown as Mock, + findByOwner: vi.fn() as unknown as Mock, + search: vi.fn() as unknown as Mock, + update: vi.fn() as unknown as Mock, + delete: vi.fn() as unknown as Mock, + getStats: vi.fn() as unknown as Mock, + updateStats: vi.fn() as unknown as Mock, + getFinancials: vi.fn() as unknown as Mock, + updateFinancials: vi.fn() as unknown as Mock, + getStewardingMetrics: vi.fn() as unknown as Mock, + updateStewardingMetrics: vi.fn() as unknown as Mock, + getPerformanceMetrics: vi.fn() as unknown as Mock, + updatePerformanceMetrics: vi.fn() as unknown as Mock, + getRatingMetrics: vi.fn() as unknown as Mock, + updateRatingMetrics: vi.fn() as unknown as Mock, + getTrendMetrics: vi.fn() as unknown as Mock, + updateTrendMetrics: vi.fn() as unknown as Mock, + getSuccessRateMetrics: vi.fn() as unknown as Mock, + updateSuccessRateMetrics: vi.fn() as unknown as Mock, + getResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateResolutionTimeMetrics: vi.fn() as unknown as Mock, + getComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + updateComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + getComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + getLeagueMembers: vi.fn().mockResolvedValue(mockMembers) as unknown as Mock, + getPendingRequests: vi.fn().mockResolvedValue(mockRequests) as unknown as Mock, + addLeagueMembers: vi.fn() as unknown as Mock, + updateLeagueMember: vi.fn() as unknown as Mock, + removeLeagueMember: vi.fn() as unknown as Mock, + addPendingRequests: vi.fn() as unknown as Mock, + removePendingRequest: vi.fn() as unknown as Mock, }; mockEventPublisher = { - emitLeagueRosterAccessed: vi.fn().mockResolvedValue(undefined), + emitLeagueCreated: vi.fn() as unknown as Mock, + emitLeagueUpdated: vi.fn() as unknown as Mock, + emitLeagueDeleted: vi.fn() as unknown as Mock, + emitLeagueAccessed: vi.fn() as unknown as Mock, + emitLeagueRosterAccessed: vi.fn().mockResolvedValue(undefined) as unknown as Mock, + getLeagueCreatedEventCount: vi.fn() as unknown as Mock, + getLeagueUpdatedEventCount: vi.fn() as unknown as Mock, + getLeagueDeletedEventCount: vi.fn() as unknown as Mock, + getLeagueAccessedEventCount: vi.fn() as unknown as Mock, + getLeagueRosterAccessedEventCount: vi.fn() as unknown as Mock, + clear: vi.fn() as unknown as Mock, }; useCase = new GetLeagueRosterUseCase(mockLeagueRepository, mockEventPublisher); }); @@ -39,7 +82,7 @@ describe('GetLeagueRosterUseCase', () => { }); it('should throw error if league not found', async () => { - mockLeagueRepository.findById.mockResolvedValue(null); + (mockLeagueRepository.findById as Mock).mockResolvedValue(null); await expect(useCase.execute({ leagueId: 'invalid' })).rejects.toThrow('League with id invalid not found'); }); }); diff --git a/core/leagues/application/use-cases/GetLeagueUseCase.test.ts b/core/leagues/application/use-cases/GetLeagueUseCase.test.ts index 6dae8b3ba..41900f720 100644 --- a/core/leagues/application/use-cases/GetLeagueUseCase.test.ts +++ b/core/leagues/application/use-cases/GetLeagueUseCase.test.ts @@ -1,9 +1,11 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { describe, it, expect, vi, beforeEach, Mock } from 'vitest'; import { GetLeagueUseCase, GetLeagueQuery } from './GetLeagueUseCase'; +import { LeagueRepository } from '../ports/LeagueRepository'; +import { LeagueEventPublisher } from '../ports/LeagueEventPublisher'; describe('GetLeagueUseCase', () => { - let mockLeagueRepository: any; - let mockEventPublisher: any; + let mockLeagueRepository: LeagueRepository; + let mockEventPublisher: LeagueEventPublisher; let useCase: GetLeagueUseCase; const mockLeague = { @@ -14,10 +16,53 @@ describe('GetLeagueUseCase', () => { beforeEach(() => { mockLeagueRepository = { - findById: vi.fn().mockResolvedValue(mockLeague), + create: vi.fn() as unknown as Mock, + findById: vi.fn().mockResolvedValue(mockLeague) as unknown as Mock, + findByName: vi.fn() as unknown as Mock, + findByOwner: vi.fn() as unknown as Mock, + search: vi.fn() as unknown as Mock, + update: vi.fn() as unknown as Mock, + delete: vi.fn() as unknown as Mock, + getStats: vi.fn() as unknown as Mock, + updateStats: vi.fn() as unknown as Mock, + getFinancials: vi.fn() as unknown as Mock, + updateFinancials: vi.fn() as unknown as Mock, + getStewardingMetrics: vi.fn() as unknown as Mock, + updateStewardingMetrics: vi.fn() as unknown as Mock, + getPerformanceMetrics: vi.fn() as unknown as Mock, + updatePerformanceMetrics: vi.fn() as unknown as Mock, + getRatingMetrics: vi.fn() as unknown as Mock, + updateRatingMetrics: vi.fn() as unknown as Mock, + getTrendMetrics: vi.fn() as unknown as Mock, + updateTrendMetrics: vi.fn() as unknown as Mock, + getSuccessRateMetrics: vi.fn() as unknown as Mock, + updateSuccessRateMetrics: vi.fn() as unknown as Mock, + getResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateResolutionTimeMetrics: vi.fn() as unknown as Mock, + getComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + updateComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + getComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + getLeagueMembers: vi.fn() as unknown as Mock, + getPendingRequests: vi.fn() as unknown as Mock, + addLeagueMembers: vi.fn() as unknown as Mock, + updateLeagueMember: vi.fn() as unknown as Mock, + removeLeagueMember: vi.fn() as unknown as Mock, + addPendingRequests: vi.fn() as unknown as Mock, + removePendingRequest: vi.fn() as unknown as Mock, }; mockEventPublisher = { - emitLeagueAccessed: vi.fn().mockResolvedValue(undefined), + emitLeagueCreated: vi.fn() as unknown as Mock, + emitLeagueUpdated: vi.fn() as unknown as Mock, + emitLeagueDeleted: vi.fn() as unknown as Mock, + emitLeagueAccessed: vi.fn().mockResolvedValue(undefined) as unknown as Mock, + emitLeagueRosterAccessed: vi.fn() as unknown as Mock, + getLeagueCreatedEventCount: vi.fn() as unknown as Mock, + getLeagueUpdatedEventCount: vi.fn() as unknown as Mock, + getLeagueDeletedEventCount: vi.fn() as unknown as Mock, + getLeagueAccessedEventCount: vi.fn() as unknown as Mock, + getLeagueRosterAccessedEventCount: vi.fn() as unknown as Mock, + clear: vi.fn() as unknown as Mock, }; useCase = new GetLeagueUseCase(mockLeagueRepository, mockEventPublisher); }); @@ -39,14 +84,14 @@ describe('GetLeagueUseCase', () => { }); it('should throw error if league not found', async () => { - mockLeagueRepository.findById.mockResolvedValue(null); + (mockLeagueRepository.findById as Mock).mockResolvedValue(null); const query: GetLeagueQuery = { leagueId: 'non-existent' }; await expect(useCase.execute(query)).rejects.toThrow('League with id non-existent not found'); }); it('should throw error if leagueId is missing', async () => { - const query: any = {}; + const query = {} as unknown as GetLeagueQuery; await expect(useCase.execute(query)).rejects.toThrow('League ID is required'); }); }); diff --git a/core/leagues/application/use-cases/JoinLeagueUseCase.test.ts b/core/leagues/application/use-cases/JoinLeagueUseCase.test.ts index c312356b5..048b17302 100644 --- a/core/leagues/application/use-cases/JoinLeagueUseCase.test.ts +++ b/core/leagues/application/use-cases/JoinLeagueUseCase.test.ts @@ -1,19 +1,60 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { describe, it, expect, vi, beforeEach, Mock } from 'vitest'; import { JoinLeagueUseCase } from './JoinLeagueUseCase'; import type { JoinLeagueCommand } from '../ports/JoinLeagueCommand'; +import { LeagueRepository } from '../ports/LeagueRepository'; +import { DriverRepository } from '../../../racing/domain/repositories/DriverRepository'; +import { EventPublisher } from '../../../shared/ports/EventPublisher'; -const mockLeagueRepository = { - findById: vi.fn(), - addPendingRequests: vi.fn(), - addLeagueMembers: vi.fn(), +const mockLeagueRepository: LeagueRepository = { + create: vi.fn() as unknown as Mock, + findById: vi.fn() as unknown as Mock, + findByName: vi.fn() as unknown as Mock, + findByOwner: vi.fn() as unknown as Mock, + search: vi.fn() as unknown as Mock, + update: vi.fn() as unknown as Mock, + delete: vi.fn() as unknown as Mock, + getStats: vi.fn() as unknown as Mock, + updateStats: vi.fn() as unknown as Mock, + getFinancials: vi.fn() as unknown as Mock, + updateFinancials: vi.fn() as unknown as Mock, + getStewardingMetrics: vi.fn() as unknown as Mock, + updateStewardingMetrics: vi.fn() as unknown as Mock, + getPerformanceMetrics: vi.fn() as unknown as Mock, + updatePerformanceMetrics: vi.fn() as unknown as Mock, + getRatingMetrics: vi.fn() as unknown as Mock, + updateRatingMetrics: vi.fn() as unknown as Mock, + getTrendMetrics: vi.fn() as unknown as Mock, + updateTrendMetrics: vi.fn() as unknown as Mock, + getSuccessRateMetrics: vi.fn() as unknown as Mock, + updateSuccessRateMetrics: vi.fn() as unknown as Mock, + getResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateResolutionTimeMetrics: vi.fn() as unknown as Mock, + getComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + updateComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + getComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + getLeagueMembers: vi.fn() as unknown as Mock, + getPendingRequests: vi.fn() as unknown as Mock, + addLeagueMembers: vi.fn() as unknown as Mock, + updateLeagueMember: vi.fn() as unknown as Mock, + removeLeagueMember: vi.fn() as unknown as Mock, + addPendingRequests: vi.fn() as unknown as Mock, + removePendingRequest: vi.fn() as unknown as Mock, }; -const mockDriverRepository = { - findDriverById: vi.fn(), +const mockDriverRepository: DriverRepository = { + findById: vi.fn() as unknown as Mock, + findByIRacingId: vi.fn() as unknown as Mock, + findAll: vi.fn() as unknown as Mock, + create: vi.fn() as unknown as Mock, + update: vi.fn() as unknown as Mock, + delete: vi.fn() as unknown as Mock, + exists: vi.fn() as unknown as Mock, + existsByIRacingId: vi.fn() as unknown as Mock, }; -const mockEventPublisher = { - publish: vi.fn(), +const mockEventPublisher: EventPublisher = { + publish: vi.fn() as unknown as Mock, }; describe('JoinLeagueUseCase', () => { @@ -24,9 +65,9 @@ describe('JoinLeagueUseCase', () => { vi.clearAllMocks(); useCase = new JoinLeagueUseCase( - mockLeagueRepository as any, - mockDriverRepository as any, - mockEventPublisher as any + mockLeagueRepository, + mockDriverRepository, + mockEventPublisher ); }); @@ -38,7 +79,7 @@ describe('JoinLeagueUseCase', () => { driverId: 'driver-456', }; - mockLeagueRepository.findById.mockImplementation(() => Promise.resolve(null)); + (mockLeagueRepository.findById as Mock).mockImplementation(() => Promise.resolve(null)); // When & Then await expect(useCase.execute(command)).rejects.toThrow('League not found'); @@ -82,13 +123,13 @@ describe('JoinLeagueUseCase', () => { tags: null, }; - mockLeagueRepository.findById.mockImplementation(() => Promise.resolve(mockLeague)); - mockDriverRepository.findDriverById.mockImplementation(() => Promise.resolve(null)); + (mockLeagueRepository.findById as Mock).mockImplementation(() => Promise.resolve(mockLeague)); + (mockDriverRepository.findById as Mock).mockImplementation(() => Promise.resolve(null)); // When & Then await expect(useCase.execute(command)).rejects.toThrow('Driver not found'); expect(mockLeagueRepository.findById).toHaveBeenCalledWith('league-123'); - expect(mockDriverRepository.findDriverById).toHaveBeenCalledWith('driver-456'); + expect(mockDriverRepository.findById).toHaveBeenCalledWith('driver-456'); }); }); @@ -141,8 +182,8 @@ describe('JoinLeagueUseCase', () => { const frozenTime = new Date('2024-01-01T00:00:00.000Z'); vi.setSystemTime(frozenTime); - mockLeagueRepository.findById.mockResolvedValue(mockLeague); - mockDriverRepository.findDriverById.mockResolvedValue(mockDriver); + (mockLeagueRepository.findById as Mock).mockResolvedValue(mockLeague); + (mockDriverRepository.findById as Mock).mockResolvedValue(mockDriver); // When await useCase.execute(command); @@ -213,8 +254,8 @@ describe('JoinLeagueUseCase', () => { updatedAt: new Date(), }; - mockLeagueRepository.findById.mockResolvedValue(mockLeague); - mockDriverRepository.findDriverById.mockResolvedValue(mockDriver); + (mockLeagueRepository.findById as Mock).mockResolvedValue(mockLeague); + (mockDriverRepository.findById as Mock).mockResolvedValue(mockDriver); // When await useCase.execute(command); diff --git a/core/leagues/application/use-cases/SearchLeaguesUseCase.test.ts b/core/leagues/application/use-cases/SearchLeaguesUseCase.test.ts index 0d88ef474..040ffcd68 100644 --- a/core/leagues/application/use-cases/SearchLeaguesUseCase.test.ts +++ b/core/leagues/application/use-cases/SearchLeaguesUseCase.test.ts @@ -1,8 +1,9 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { describe, it, expect, vi, beforeEach, Mock } from 'vitest'; import { SearchLeaguesUseCase, SearchLeaguesQuery } from './SearchLeaguesUseCase'; +import { LeagueRepository } from '../ports/LeagueRepository'; describe('SearchLeaguesUseCase', () => { - let mockLeagueRepository: any; + let mockLeagueRepository: LeagueRepository; let useCase: SearchLeaguesUseCase; const mockLeagues = [ @@ -13,7 +14,40 @@ describe('SearchLeaguesUseCase', () => { beforeEach(() => { mockLeagueRepository = { - search: vi.fn().mockResolvedValue([...mockLeagues]), + create: vi.fn() as unknown as Mock, + findById: vi.fn() as unknown as Mock, + findByName: vi.fn() as unknown as Mock, + findByOwner: vi.fn() as unknown as Mock, + search: vi.fn().mockResolvedValue([...mockLeagues]) as unknown as Mock, + update: vi.fn() as unknown as Mock, + delete: vi.fn() as unknown as Mock, + getStats: vi.fn() as unknown as Mock, + updateStats: vi.fn() as unknown as Mock, + getFinancials: vi.fn() as unknown as Mock, + updateFinancials: vi.fn() as unknown as Mock, + getStewardingMetrics: vi.fn() as unknown as Mock, + updateStewardingMetrics: vi.fn() as unknown as Mock, + getPerformanceMetrics: vi.fn() as unknown as Mock, + updatePerformanceMetrics: vi.fn() as unknown as Mock, + getRatingMetrics: vi.fn() as unknown as Mock, + updateRatingMetrics: vi.fn() as unknown as Mock, + getTrendMetrics: vi.fn() as unknown as Mock, + updateTrendMetrics: vi.fn() as unknown as Mock, + getSuccessRateMetrics: vi.fn() as unknown as Mock, + updateSuccessRateMetrics: vi.fn() as unknown as Mock, + getResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateResolutionTimeMetrics: vi.fn() as unknown as Mock, + getComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + updateComplexSuccessRateMetrics: vi.fn() as unknown as Mock, + getComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + updateComplexResolutionTimeMetrics: vi.fn() as unknown as Mock, + getLeagueMembers: vi.fn() as unknown as Mock, + getPendingRequests: vi.fn() as unknown as Mock, + addLeagueMembers: vi.fn() as unknown as Mock, + updateLeagueMember: vi.fn() as unknown as Mock, + removeLeagueMember: vi.fn() as unknown as Mock, + addPendingRequests: vi.fn() as unknown as Mock, + removePendingRequest: vi.fn() as unknown as Mock, }; useCase = new SearchLeaguesUseCase(mockLeagueRepository); }); @@ -35,7 +69,7 @@ describe('SearchLeaguesUseCase', () => { }); it('should throw error if query is missing', async () => { - const query: any = { query: '' }; + const query = { query: '' } as unknown as SearchLeaguesQuery; await expect(useCase.execute(query)).rejects.toThrow('Search query is required'); }); }); diff --git a/core/media/application/use-cases/GetUploadedMediaUseCase.test.ts b/core/media/application/use-cases/GetUploadedMediaUseCase.test.ts index 16d320185..670b5d020 100644 --- a/core/media/application/use-cases/GetUploadedMediaUseCase.test.ts +++ b/core/media/application/use-cases/GetUploadedMediaUseCase.test.ts @@ -74,7 +74,7 @@ describe('GetUploadedMediaUseCase', () => { const mockMetadata = { size: 9 }; mediaStorage.getBytes.mockResolvedValue(mockBytes); - mediaStorage.getMetadata.mockResolvedValue(mockMetadata as any); + mediaStorage.getMetadata.mockResolvedValue(mockMetadata as unknown as { size: number; contentType?: string }); const input = { storageKey: 'media-key' }; const result = await useCase.execute(input); diff --git a/core/media/domain/value-objects/AvatarId.test.ts b/core/media/domain/value-objects/AvatarId.test.ts index 4dbde2e54..d25224913 100644 --- a/core/media/domain/value-objects/AvatarId.test.ts +++ b/core/media/domain/value-objects/AvatarId.test.ts @@ -23,11 +23,11 @@ describe('AvatarId', () => { }); it('throws error when null', () => { - expect(() => AvatarId.create(null as any)).toThrow('Avatar ID cannot be empty'); + expect(() => AvatarId.create(null as unknown as string)).toThrow('Avatar ID cannot be empty'); }); it('throws error when undefined', () => { - expect(() => AvatarId.create(undefined as any)).toThrow('Avatar ID cannot be empty'); + expect(() => AvatarId.create(undefined as unknown as string)).toThrow('Avatar ID cannot be empty'); }); }); diff --git a/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts b/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts index 8c71092fc..6c2b8fd68 100644 --- a/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts +++ b/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts @@ -33,8 +33,8 @@ describe('GetTeamsLeaderboardUseCase', () => { vi.mocked(mockTeamRepository.findAll).mockResolvedValue([mockTeam1, mockTeam2]); vi.mocked(mockTeamMembershipRepository.getTeamMembers).mockImplementation(async (teamId) => { - if (teamId === 'team-1') return [{ driverId: 'driver-1' }, { driverId: 'driver-2' }] as any; - if (teamId === 'team-2') return [{ driverId: 'driver-3' }] as any; + if (teamId === 'team-1') return [{ driverId: 'driver-1' }, { driverId: 'driver-2' }] as unknown as Array<{ driverId: string }>; + if (teamId === 'team-2') return [{ driverId: 'driver-3' }] as unknown as Array<{ driverId: string }>; return []; }); diff --git a/core/racing/application/use-cases/RankingUseCase.test.ts b/core/racing/application/use-cases/RankingUseCase.test.ts index 0d9da0f30..3e0bc41ba 100644 --- a/core/racing/application/use-cases/RankingUseCase.test.ts +++ b/core/racing/application/use-cases/RankingUseCase.test.ts @@ -27,7 +27,7 @@ describe('RankingUseCase', () => { ['driver-1', { rating: 1500, wins: 2, totalRaces: 10, overallRank: 1 }], ['driver-2', { rating: 1200, wins: 0, totalRaces: 5, overallRank: 2 }], ]); - vi.mocked(mockDriverStatsRepository.getAllStats).mockResolvedValue(mockStatsMap as any); + vi.mocked(mockDriverStatsRepository.getAllStats).mockResolvedValue(mockStatsMap as unknown as Map); const result = await useCase.getAllDriverRankings(); diff --git a/core/racing/domain/services/ChampionshipAggregator.test.ts b/core/racing/domain/services/ChampionshipAggregator.test.ts index 213dcfa24..56c7b2881 100644 --- a/core/racing/domain/services/ChampionshipAggregator.test.ts +++ b/core/racing/domain/services/ChampionshipAggregator.test.ts @@ -14,19 +14,19 @@ describe('ChampionshipAggregator', () => { const championship = { id: 'champ-1', dropScorePolicy: { strategy: 'none' }, - } as any; + } as unknown as { id: string; dropScorePolicy: { strategy: string } }; const eventPointsByEventId = { 'event-1': [ - { - participant: { id: 'p1', type: 'driver' }, + { + participant: { id: 'p1', type: 'driver' }, totalPoints: 10, basePoints: 10, bonusPoints: 0, penaltyPoints: 0 }, - { - participant: { id: 'p2', type: 'driver' }, + { + participant: { id: 'p2', type: 'driver' }, totalPoints: 20, basePoints: 20, bonusPoints: 0, @@ -34,15 +34,15 @@ describe('ChampionshipAggregator', () => { }, ], 'event-2': [ - { - participant: { id: 'p1', type: 'driver' }, + { + participant: { id: 'p1', type: 'driver' }, totalPoints: 15, basePoints: 15, bonusPoints: 0, penaltyPoints: 0 }, ], - } as any; + } as unknown as Record>; vi.mocked(mockDropScoreApplier.apply).mockImplementation((policy, events) => { const total = events.reduce((sum, e) => sum + e.points, 0); diff --git a/core/rating/application/use-cases/CalculateTeamContributionUseCase.test.ts b/core/rating/application/use-cases/CalculateTeamContributionUseCase.test.ts index c725cf43b..1352b0e51 100644 --- a/core/rating/application/use-cases/CalculateTeamContributionUseCase.test.ts +++ b/core/rating/application/use-cases/CalculateTeamContributionUseCase.test.ts @@ -34,10 +34,10 @@ describe('CalculateTeamContributionUseCase', () => { beforeEach(() => { vi.clearAllMocks(); useCase = new CalculateTeamContributionUseCase({ - ratingRepository: mockRatingRepository as any, - driverRepository: mockDriverRepository as any, - raceRepository: mockRaceRepository as any, - resultRepository: mockResultRepository as any, + ratingRepository: mockRatingRepository as unknown as RatingRepository, + driverRepository: mockDriverRepository as unknown as DriverRepository, + raceRepository: mockRaceRepository as unknown as RaceRepository, + resultRepository: mockResultRepository as unknown as ResultRepository, }); }); diff --git a/core/rating/application/use-cases/GetRatingLeaderboardUseCase.test.ts b/core/rating/application/use-cases/GetRatingLeaderboardUseCase.test.ts index cbd857b0d..9f54b5770 100644 --- a/core/rating/application/use-cases/GetRatingLeaderboardUseCase.test.ts +++ b/core/rating/application/use-cases/GetRatingLeaderboardUseCase.test.ts @@ -23,8 +23,8 @@ describe('GetRatingLeaderboardUseCase', () => { beforeEach(() => { vi.clearAllMocks(); useCase = new GetRatingLeaderboardUseCase({ - ratingRepository: mockRatingRepository as any, - driverRepository: mockDriverRepository as any, + ratingRepository: mockRatingRepository as unknown as RatingRepository, + driverRepository: mockDriverRepository as unknown as DriverRepository, }); }); diff --git a/core/shared/domain/Result.test.ts b/core/shared/domain/Result.test.ts index d7bab5d57..9663fc501 100644 --- a/core/shared/domain/Result.test.ts +++ b/core/shared/domain/Result.test.ts @@ -294,11 +294,11 @@ describe('Result', () => { it('should stop chaining on first error', () => { const result = Result.ok(2) .andThen((x) => Result.ok(x * 3)) - .andThen((x) => Result.err(new Error(`stopped at ${x}`))) + .andThen((x) => Result.err(new Error(`stopped at ${x}`))) .andThen((x) => Result.ok(x + 1)); // This should not execute - + expect(result.isErr()).toBe(true); - expect(result.unwrapErr().message).toBe('stopped here'); + expect(result.unwrapErr().message).toBe('stopped at 6'); }); });