refactor use cases
This commit is contained in:
@@ -4,7 +4,6 @@ import {
|
||||
type RejectLeagueJoinRequestResult,
|
||||
} from './RejectLeagueJoinRequestUseCase';
|
||||
import type { ILeagueMembershipRepository } from '../../domain/repositories/ILeagueMembershipRepository';
|
||||
import type { UseCaseOutputPort } from '@core/shared/application';
|
||||
import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode';
|
||||
|
||||
describe('RejectLeagueJoinRequestUseCase', () => {
|
||||
@@ -21,13 +20,11 @@ describe('RejectLeagueJoinRequestUseCase', () => {
|
||||
});
|
||||
|
||||
it('reject removes request only', async () => {
|
||||
const output: UseCaseOutputPort<RejectLeagueJoinRequestResult> & { present: Mock } = {
|
||||
const output: { present: Mock } = {
|
||||
present: vi.fn(),
|
||||
} as any;
|
||||
|
||||
const useCase = new RejectLeagueJoinRequestUseCase(
|
||||
leagueMembershipRepository as unknown as ILeagueMembershipRepository,
|
||||
);
|
||||
const useCase = new RejectLeagueJoinRequestUseCase(leagueMembershipRepository as unknown as ILeagueMembershipRepository);
|
||||
|
||||
leagueMembershipRepository.getJoinRequests.mockResolvedValue([
|
||||
{ id: 'jr-1', leagueId: 'league-1', driverId: 'driver-1' },
|
||||
@@ -40,17 +37,14 @@ describe('RejectLeagueJoinRequestUseCase', () => {
|
||||
|
||||
expect(result.isOk()).toBe(true);
|
||||
expect(leagueMembershipRepository.removeJoinRequest).toHaveBeenCalledWith('jr-1');
|
||||
expect(output.present).toHaveBeenCalledWith({ success: true, message: 'Join request rejected.' });
|
||||
});
|
||||
});
|
||||
|
||||
it('reject returns error when request missing', async () => {
|
||||
const output: UseCaseOutputPort<RejectLeagueJoinRequestResult> & { present: Mock } = {
|
||||
const output: { present: Mock } = {
|
||||
present: vi.fn(),
|
||||
} as any;
|
||||
|
||||
const useCase = new RejectLeagueJoinRequestUseCase(
|
||||
leagueMembershipRepository as unknown as ILeagueMembershipRepository,
|
||||
);
|
||||
const useCase = new RejectLeagueJoinRequestUseCase(leagueMembershipRepository as unknown as ILeagueMembershipRepository);
|
||||
|
||||
leagueMembershipRepository.getJoinRequests.mockResolvedValue([]);
|
||||
|
||||
@@ -62,7 +56,6 @@ describe('RejectLeagueJoinRequestUseCase', () => {
|
||||
expect(result.isErr()).toBe(true);
|
||||
const err = result.unwrapErr() as ApplicationErrorCode<'JOIN_REQUEST_NOT_FOUND'>;
|
||||
expect(err.code).toBe('JOIN_REQUEST_NOT_FOUND');
|
||||
expect(output.present).not.toHaveBeenCalled();
|
||||
expect(leagueMembershipRepository.removeJoinRequest).not.toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user