code quality

This commit is contained in:
2026-01-26 01:36:22 +01:00
parent f06a00da1b
commit 49cc91e046
23 changed files with 68 additions and 54 deletions

View File

@@ -8,13 +8,13 @@
*/
import { describe, it, expect, vi, beforeEach } from 'vitest';
import type { Mock } from 'vitest';
import { GetDashboardUseCase } from './GetDashboardUseCase';
import { ValidationError } from '../../../shared/errors/ValidationError';
import { DriverNotFoundError } from '../../domain/errors/DriverNotFoundError';
import { DashboardRepository } from '../ports/DashboardRepository';
import { DashboardRepository, DriverData, RaceData } from '../ports/DashboardRepository';
import { DashboardEventPublisher } from '../ports/DashboardEventPublisher';
import { Logger } from '../../../shared/domain/Logger';
import { DriverData, RaceData, LeagueStandingData, ActivityData } from '../ports/DashboardRepository';
describe('GetDashboardUseCase', () => {
let mockDriverRepository: DashboardRepository;
@@ -120,7 +120,7 @@ describe('GetDashboardUseCase', () => {
it('should throw DriverNotFoundError when driverRepository.findDriverById returns null', async () => {
// Given
const query = { driverId: 'driver-123' };
(mockDriverRepository.findDriverById as any).mockResolvedValue(null);
(mockDriverRepository.findDriverById as Mock).mockResolvedValue(null);
// When & Then
await expect(useCase.execute(query)).rejects.toThrow(DriverNotFoundError);
@@ -143,7 +143,7 @@ describe('GetDashboardUseCase', () => {
const query = { driverId: 'driver-123' };
// Mock driver exists
(mockDriverRepository.findDriverById as any).mockResolvedValue({
(mockDriverRepository.findDriverById as Mock).mockResolvedValue({
id: 'driver-123',
name: 'Test Driver',
rating: 1500,
@@ -155,7 +155,7 @@ describe('GetDashboardUseCase', () => {
} as DriverData);
// Mock races with missing trackName
(mockRaceRepository.getUpcomingRaces as any).mockResolvedValue([
(mockRaceRepository.getUpcomingRaces as Mock).mockResolvedValue([
{
id: 'race-1',
trackName: '', // Missing trackName
@@ -170,8 +170,8 @@ describe('GetDashboardUseCase', () => {
},
] as RaceData[]);
(mockLeagueRepository.getLeagueStandings as any).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as any).mockResolvedValue([]);
(mockLeagueRepository.getLeagueStandings as Mock).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as Mock).mockResolvedValue([]);
// When
const result = await useCase.execute(query);
@@ -186,7 +186,7 @@ describe('GetDashboardUseCase', () => {
const query = { driverId: 'driver-123' };
// Mock driver exists
(mockDriverRepository.findDriverById as any).mockResolvedValue({
(mockDriverRepository.findDriverById as Mock).mockResolvedValue({
id: 'driver-123',
name: 'Test Driver',
rating: 1500,
@@ -198,7 +198,7 @@ describe('GetDashboardUseCase', () => {
} as DriverData);
// Mock races with past dates
(mockRaceRepository.getUpcomingRaces as any).mockResolvedValue([
(mockRaceRepository.getUpcomingRaces as Mock).mockResolvedValue([
{
id: 'race-1',
trackName: 'Track A',
@@ -213,8 +213,8 @@ describe('GetDashboardUseCase', () => {
},
] as RaceData[]);
(mockLeagueRepository.getLeagueStandings as any).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as any).mockResolvedValue([]);
(mockLeagueRepository.getLeagueStandings as Mock).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as Mock).mockResolvedValue([]);
// When
const result = await useCase.execute(query);
@@ -229,7 +229,7 @@ describe('GetDashboardUseCase', () => {
const query = { driverId: 'driver-123' };
// Mock driver exists
(mockDriverRepository.findDriverById as any).mockResolvedValue({
(mockDriverRepository.findDriverById as Mock).mockResolvedValue({
id: 'driver-123',
name: 'Test Driver',
rating: 1500,
@@ -241,7 +241,7 @@ describe('GetDashboardUseCase', () => {
} as DriverData);
// Mock races with various invalid states
(mockRaceRepository.getUpcomingRaces as any).mockResolvedValue([
(mockRaceRepository.getUpcomingRaces as Mock).mockResolvedValue([
{
id: 'race-1',
trackName: '', // Missing trackName
@@ -262,8 +262,8 @@ describe('GetDashboardUseCase', () => {
},
] as RaceData[]);
(mockLeagueRepository.getLeagueStandings as any).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as any).mockResolvedValue([]);
(mockLeagueRepository.getLeagueStandings as Mock).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as Mock).mockResolvedValue([]);
// When
const result = await useCase.execute(query);
@@ -278,7 +278,7 @@ describe('GetDashboardUseCase', () => {
const query = { driverId: 'driver-123' };
// Mock driver exists
(mockDriverRepository.findDriverById as any).mockResolvedValue({
(mockDriverRepository.findDriverById as Mock).mockResolvedValue({
id: 'driver-123',
name: 'Test Driver',
rating: 1500,
@@ -290,7 +290,7 @@ describe('GetDashboardUseCase', () => {
} as DriverData);
// Mock races with valid data
(mockRaceRepository.getUpcomingRaces as any).mockResolvedValue([
(mockRaceRepository.getUpcomingRaces as Mock).mockResolvedValue([
{
id: 'race-1',
trackName: 'Track A',
@@ -305,8 +305,8 @@ describe('GetDashboardUseCase', () => {
},
] as RaceData[]);
(mockLeagueRepository.getLeagueStandings as any).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as any).mockResolvedValue([]);
(mockLeagueRepository.getLeagueStandings as Mock).mockResolvedValue([]);
(mockActivityRepository.getRecentActivity as Mock).mockResolvedValue([]);
// When
const result = await useCase.execute(query);