fix core tests
This commit is contained in:
@@ -14,6 +14,7 @@ describe('CloseRaceEventStewardingUseCase', () => {
|
||||
let useCase: CloseRaceEventStewardingUseCase;
|
||||
let raceEventRepository: {
|
||||
findAwaitingStewardingClose: Mock;
|
||||
findById: Mock;
|
||||
update: Mock;
|
||||
};
|
||||
let raceRegistrationRepository: {
|
||||
@@ -33,6 +34,7 @@ describe('CloseRaceEventStewardingUseCase', () => {
|
||||
beforeEach(() => {
|
||||
raceEventRepository = {
|
||||
findAwaitingStewardingClose: vi.fn(),
|
||||
findById: vi.fn(),
|
||||
update: vi.fn(),
|
||||
};
|
||||
raceRegistrationRepository = {
|
||||
@@ -80,6 +82,7 @@ describe('CloseRaceEventStewardingUseCase', () => {
|
||||
});
|
||||
|
||||
raceEventRepository.findAwaitingStewardingClose.mockResolvedValue([raceEvent]);
|
||||
raceEventRepository.findById.mockResolvedValue(raceEvent.closeStewarding());
|
||||
raceRegistrationRepository.getRegisteredDrivers.mockResolvedValue(['driver-1', 'driver-2']);
|
||||
penaltyRepository.findByRaceId.mockResolvedValue([]);
|
||||
domainEventPublisher.publish.mockResolvedValue(undefined);
|
||||
@@ -90,13 +93,22 @@ describe('CloseRaceEventStewardingUseCase', () => {
|
||||
expect(result.unwrap()).toBeUndefined();
|
||||
expect(raceEventRepository.findAwaitingStewardingClose).toHaveBeenCalled();
|
||||
expect(raceEventRepository.update).toHaveBeenCalledWith(
|
||||
expect.objectContaining({ id: 'event-1', status: 'closed' })
|
||||
expect.objectContaining({ status: 'closed' })
|
||||
);
|
||||
expect(domainEventPublisher.publish).toHaveBeenCalled();
|
||||
expect(output.present).toHaveBeenCalledTimes(1);
|
||||
expect(output.present).toHaveBeenCalledWith({
|
||||
race: expect.objectContaining({ id: 'event-1', status: 'closed' })
|
||||
});
|
||||
|
||||
const presentedRace = (output.present as Mock).mock.calls[0]?.[0]?.race as unknown as {
|
||||
id?: unknown;
|
||||
status?: unknown;
|
||||
};
|
||||
const presentedId =
|
||||
presentedRace?.id && typeof presentedRace.id === 'object' && typeof presentedRace.id.toString === 'function'
|
||||
? presentedRace.id.toString()
|
||||
: presentedRace?.id;
|
||||
|
||||
expect(presentedId).toBe('event-1');
|
||||
expect(presentedRace?.status).toBe('closed');
|
||||
});
|
||||
|
||||
it('should handle no expired events', async () => {
|
||||
|
||||
Reference in New Issue
Block a user