fix seeds

This commit is contained in:
2025-12-27 01:53:36 +01:00
parent 901fb1ac83
commit 15435c93fc
12 changed files with 259 additions and 200 deletions

View File

@@ -35,6 +35,7 @@ describe('CompleteDriverOnboardingUseCase', () => {
useCase = new CompleteDriverOnboardingUseCase(
driverRepository as unknown as IDriverRepository,
logger,
output,
);
});
@@ -65,7 +66,7 @@ describe('CompleteDriverOnboardingUseCase', () => {
const result = await useCase.execute(command);
expect(result.isOk()).toBe(true);
expect(result.unwrap()).toEqual({ driver: createdDriver });
expect(output.present).toHaveBeenCalledWith({ driver: createdDriver });
expect(driverRepository.findById).toHaveBeenCalledWith('user-1');
expect(driverRepository.create).toHaveBeenCalledWith(
expect.objectContaining({
@@ -143,7 +144,7 @@ describe('CompleteDriverOnboardingUseCase', () => {
const result = await useCase.execute(command);
expect(result.isOk()).toBe(true);
expect(result.unwrap()).toEqual({ driver: createdDriver });
expect(output.present).toHaveBeenCalledWith({ driver: createdDriver });
expect(driverRepository.create).toHaveBeenCalledWith(
expect.objectContaining({
id: 'user-1',

View File

@@ -7,6 +7,8 @@ import type { IDriverRepository } from '../../domain/repositories/IDriverReposit
import type { IRankingService } from '../../domain/services/IRankingService';
import type { IDriverStatsService } from '../../domain/services/IDriverStatsService';
import type { Logger } from '@core/shared/application';
import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort';
import type { GetDriversLeaderboardResult } from './GetDriversLeaderboardUseCase';
describe('GetDriversLeaderboardUseCase', () => {
const mockDriverFindAll = vi.fn();
@@ -39,6 +41,10 @@ describe('GetDriversLeaderboardUseCase', () => {
error: vi.fn(),
};
const mockOutput: UseCaseOutputPort<GetDriversLeaderboardResult> = {
present: vi.fn(),
};
it('should return drivers leaderboard data', async () => {
const useCase = new GetDriversLeaderboardUseCase(
mockDriverRepo,
@@ -46,6 +52,7 @@ describe('GetDriversLeaderboardUseCase', () => {
mockDriverStatsService,
mockGetDriverAvatar,
mockLogger,
mockOutput,
);
const driver1 = { id: 'driver1', name: { value: 'Driver One' }, country: { value: 'US' } };
@@ -75,9 +82,8 @@ describe('GetDriversLeaderboardUseCase', () => {
const result = await useCase.execute(input);
expect(result.isOk()).toBe(true);
const presented = result.unwrap();
expect(presented).toEqual({
expect(mockOutput.present).toHaveBeenCalledWith({
items: [
expect.objectContaining({
driver: driver1,
@@ -115,6 +121,7 @@ describe('GetDriversLeaderboardUseCase', () => {
mockDriverStatsService,
mockGetDriverAvatar,
mockLogger,
mockOutput,
);
mockDriverFindAll.mockResolvedValue([]);
@@ -125,9 +132,8 @@ describe('GetDriversLeaderboardUseCase', () => {
const result = await useCase.execute(input);
expect(result.isOk()).toBe(true);
const presented = result.unwrap();
expect(presented).toEqual({
expect(mockOutput.present).toHaveBeenCalledWith({
items: [],
totalRaces: 0,
totalWins: 0,
@@ -142,6 +148,7 @@ describe('GetDriversLeaderboardUseCase', () => {
mockDriverStatsService,
mockGetDriverAvatar,
mockLogger,
mockOutput,
);
const driver1 = { id: 'driver1', name: { value: 'Driver One' }, country: { value: 'US' } };
@@ -157,9 +164,8 @@ describe('GetDriversLeaderboardUseCase', () => {
const result = await useCase.execute(input);
expect(result.isOk()).toBe(true);
const presented = result.unwrap();
expect(presented).toEqual({
expect(mockOutput.present).toHaveBeenCalledWith({
items: [
expect.objectContaining({
driver: driver1,
@@ -186,6 +192,7 @@ describe('GetDriversLeaderboardUseCase', () => {
mockDriverStatsService,
mockGetDriverAvatar,
mockLogger,
mockOutput,
);
const error = new Error('Repository error');

View File

@@ -3,21 +3,27 @@ import {
GetTotalDriversUseCase,
GetTotalDriversInput,
GetTotalDriversErrorCode,
GetTotalDriversResult,
} from './GetTotalDriversUseCase';
import { IDriverRepository } from '../../domain/repositories/IDriverRepository';
import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode';
import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort';
describe('GetTotalDriversUseCase', () => {
let useCase: GetTotalDriversUseCase;
let driverRepository: {
findAll: Mock;
};
let output: UseCaseOutputPort<GetTotalDriversResult>;
beforeEach(() => {
driverRepository = {
findAll: vi.fn(),
};
output = {
present: vi.fn(),
};
useCase = new GetTotalDriversUseCase(driverRepository as unknown as IDriverRepository);
useCase = new GetTotalDriversUseCase(driverRepository as unknown as IDriverRepository, output);
});
it('should return total number of drivers', async () => {
@@ -30,7 +36,7 @@ describe('GetTotalDriversUseCase', () => {
const result = await useCase.execute(input);
expect(result.isOk()).toBe(true);
expect(result.unwrap()).toEqual({ totalDrivers: 2 });
expect(output.present).toHaveBeenCalledWith({ totalDrivers: 2 });
});
it('should return error on repository failure', async () => {

View File

@@ -3,10 +3,12 @@ import {
IsDriverRegisteredForRaceUseCase,
type IsDriverRegisteredForRaceInput,
type IsDriverRegisteredForRaceErrorCode,
type IsDriverRegisteredForRaceResult,
} from './IsDriverRegisteredForRaceUseCase';
import { IRaceRegistrationRepository } from '../../domain/repositories/IRaceRegistrationRepository';
import type { Logger } from '@core/shared/application';
import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode';
import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort';
describe('IsDriverRegisteredForRaceUseCase', () => {
let useCase: IsDriverRegisteredForRaceUseCase;
@@ -19,6 +21,7 @@ describe('IsDriverRegisteredForRaceUseCase', () => {
warn: Mock;
error: Mock;
};
let output: UseCaseOutputPort<IsDriverRegisteredForRaceResult>;
beforeEach(() => {
registrationRepository = {
isRegistered: vi.fn(),
@@ -29,9 +32,13 @@ describe('IsDriverRegisteredForRaceUseCase', () => {
warn: vi.fn(),
error: vi.fn(),
};
output = {
present: vi.fn(),
};
useCase = new IsDriverRegisteredForRaceUseCase(
registrationRepository as unknown as IRaceRegistrationRepository,
logger as unknown as Logger,
output,
);
});
@@ -43,7 +50,7 @@ describe('IsDriverRegisteredForRaceUseCase', () => {
const result = await useCase.execute(params);
expect(result.isOk()).toBe(true);
expect(result.unwrap()).toEqual({
expect(output.present).toHaveBeenCalledWith({
raceId: params.raceId,
driverId: params.driverId,
isRegistered: true,
@@ -58,7 +65,7 @@ describe('IsDriverRegisteredForRaceUseCase', () => {
const result = await useCase.execute(params);
expect(result.isOk()).toBe(true);
expect(result.unwrap()).toEqual({
expect(output.present).toHaveBeenCalledWith({
raceId: params.raceId,
driverId: params.driverId,
isRegistered: false,