fix issues
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
import { describe, it, expect, vi, Mocked } from 'vitest';
|
||||
import { LeagueMembershipService } from './LeagueMembershipService';
|
||||
import { LeaguesApiClient } from '../../api/leagues/LeaguesApiClient';
|
||||
import { LeagueMemberViewModel } from '../../view-models';
|
||||
import type { LeagueMemberDTO } from '../../types/generated';
|
||||
import { LeagueMemberViewModel } from '../../view-models/LeagueMemberViewModel';
|
||||
|
||||
describe('LeagueMembershipService', () => {
|
||||
let mockApiClient: Mocked<LeaguesApiClient>;
|
||||
@@ -12,7 +11,7 @@ describe('LeagueMembershipService', () => {
|
||||
mockApiClient = {
|
||||
getMemberships: vi.fn(),
|
||||
removeMember: vi.fn(),
|
||||
} as Mocked<LeaguesApiClient>;
|
||||
} as unknown as Mocked<LeaguesApiClient>;
|
||||
|
||||
service = new LeagueMembershipService(mockApiClient);
|
||||
});
|
||||
@@ -26,8 +25,8 @@ describe('LeagueMembershipService', () => {
|
||||
members: [
|
||||
{ driverId: 'driver-1' },
|
||||
{ driverId: 'driver-2' },
|
||||
] as LeagueMemberDTO[],
|
||||
};
|
||||
],
|
||||
} as any;
|
||||
|
||||
mockApiClient.getMemberships.mockResolvedValue(mockDto);
|
||||
|
||||
@@ -35,21 +34,24 @@ describe('LeagueMembershipService', () => {
|
||||
|
||||
expect(mockApiClient.getMemberships).toHaveBeenCalledWith(leagueId);
|
||||
expect(result).toHaveLength(2);
|
||||
expect(result[0]).toBeInstanceOf(LeagueMemberViewModel);
|
||||
expect(result[0].driverId).toBe('driver-1');
|
||||
expect(result[0].currentUserId).toBe(currentUserId);
|
||||
expect(result[1]).toBeInstanceOf(LeagueMemberViewModel);
|
||||
expect(result[1].driverId).toBe('driver-2');
|
||||
expect(result[1].currentUserId).toBe(currentUserId);
|
||||
|
||||
const first = result[0]!;
|
||||
const second = result[1]!;
|
||||
|
||||
expect(first).toBeInstanceOf(LeagueMemberViewModel);
|
||||
expect(first.driverId).toBe('driver-1');
|
||||
expect(first.currentUserId).toBe(currentUserId);
|
||||
|
||||
expect(second).toBeInstanceOf(LeagueMemberViewModel);
|
||||
expect(second.driverId).toBe('driver-2');
|
||||
expect(second.currentUserId).toBe(currentUserId);
|
||||
});
|
||||
|
||||
it('should handle empty members array', async () => {
|
||||
const leagueId = 'league-123';
|
||||
const currentUserId = 'user-456';
|
||||
|
||||
const mockDto = {
|
||||
members: [] as LeagueMemberDTO[],
|
||||
};
|
||||
const mockDto = { members: [] } as any;
|
||||
|
||||
mockApiClient.getMemberships.mockResolvedValue(mockDto);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user