view data fixes
This commit is contained in:
@@ -1,29 +1,66 @@
|
||||
import { describe, it, expect } from 'vitest';
|
||||
import { CreateTeamViewModel } from './CreateTeamViewModel';
|
||||
import type { CreateTeamViewData } from '../view-data/CreateTeamViewData';
|
||||
|
||||
describe('CreateTeamViewModel', () => {
|
||||
it('maps id and success from DTO', () => {
|
||||
const dto = { id: 'team-123', success: true };
|
||||
it('maps teamId and success from ViewData', () => {
|
||||
const viewData: CreateTeamViewData = {
|
||||
teamId: 'team-123',
|
||||
success: true,
|
||||
successMessage: 'Team created successfully!',
|
||||
};
|
||||
|
||||
const vm = new CreateTeamViewModel(dto);
|
||||
const vm = new CreateTeamViewModel(viewData);
|
||||
|
||||
expect(vm.id).toBe('team-123');
|
||||
expect(vm.teamId).toBe('team-123');
|
||||
expect(vm.success).toBe(true);
|
||||
});
|
||||
|
||||
it('returns success successMessage when creation succeeded', () => {
|
||||
const dto = { id: 'team-1', success: true };
|
||||
const viewData: CreateTeamViewData = {
|
||||
teamId: 'team-1',
|
||||
success: true,
|
||||
successMessage: 'Team created successfully!',
|
||||
};
|
||||
|
||||
const vm = new CreateTeamViewModel(dto);
|
||||
const vm = new CreateTeamViewModel(viewData);
|
||||
|
||||
expect(vm.successMessage).toBe('Team created successfully!');
|
||||
});
|
||||
|
||||
it('returns failure successMessage when creation failed', () => {
|
||||
const dto = { id: 'team-1', success: false };
|
||||
const viewData: CreateTeamViewData = {
|
||||
teamId: 'team-1',
|
||||
success: false,
|
||||
successMessage: 'Failed to create team.',
|
||||
};
|
||||
|
||||
const vm = new CreateTeamViewModel(dto);
|
||||
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);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user