31 lines
909 B
TypeScript
31 lines
909 B
TypeScript
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
import { DemoteAdminUseCase } from './DemoteAdminUseCase';
|
|
|
|
describe('DemoteAdminUseCase', () => {
|
|
let mockLeagueRepository: any;
|
|
let mockDriverRepository: any;
|
|
let mockEventPublisher: any;
|
|
let useCase: DemoteAdminUseCase;
|
|
|
|
beforeEach(() => {
|
|
mockLeagueRepository = {
|
|
updateLeagueMember: vi.fn().mockResolvedValue(undefined),
|
|
};
|
|
mockDriverRepository = {};
|
|
mockEventPublisher = {};
|
|
useCase = new DemoteAdminUseCase(mockLeagueRepository, mockDriverRepository, mockEventPublisher as any);
|
|
});
|
|
|
|
it('should update member role to member', async () => {
|
|
const command = {
|
|
leagueId: 'l1',
|
|
targetDriverId: 'd1',
|
|
actorId: 'owner-1',
|
|
};
|
|
|
|
await useCase.execute(command);
|
|
|
|
expect(mockLeagueRepository.updateLeagueMember).toHaveBeenCalledWith('l1', 'd1', { role: 'member' });
|
|
});
|
|
});
|