import { describe, expect, it } from 'vitest'; import type { CreateTeamViewData } from '../view-data/CreateTeamViewData'; import { CreateTeamViewModel } from './CreateTeamViewModel'; describe('CreateTeamViewModel', () => { it('maps teamId and success from ViewData', () => { const viewData: CreateTeamViewData = { teamId: 'team-123', success: true, successMessage: 'Team created successfully!', }; const vm = new CreateTeamViewModel(viewData); expect(vm.teamId).toBe('team-123'); expect(vm.success).toBe(true); }); it('returns success successMessage when creation succeeded', () => { const viewData: CreateTeamViewData = { teamId: 'team-1', success: true, successMessage: 'Team created successfully!', }; const vm = new CreateTeamViewModel(viewData); expect(vm.successMessage).toBe('Team created successfully!'); }); it('returns failure successMessage when creation failed', () => { const viewData: CreateTeamViewData = { teamId: 'team-1', success: false, successMessage: 'Failed to create team.', }; const vm = new CreateTeamViewModel(viewData); expect(vm.successMessage).toBe('Failed to create team.'); }); it('returns isSuccessful when creation succeeded', () => { const viewData: CreateTeamViewData = { teamId: 'team-1', success: true, successMessage: 'Team created successfully!', }; const vm = new CreateTeamViewModel(viewData); expect(vm.isSuccessful).toBe(true); }); it('returns isSuccessful when creation failed', () => { const viewData: CreateTeamViewData = { teamId: 'team-1', success: false, successMessage: 'Failed to create team.', }; const vm = new CreateTeamViewModel(viewData); expect(vm.isSuccessful).toBe(false); }); });