view data fixes
This commit is contained in:
@@ -1,8 +1,37 @@
|
||||
import { describe, it, expect } from 'vitest';
|
||||
import { EmailSignupViewModel } from './EmailSignupViewModel';
|
||||
import type { EmailSignupViewData } from '../view-data/EmailSignupViewData';
|
||||
|
||||
describe('EmailSignupViewModel', () => {
|
||||
it('should be defined', () => {
|
||||
expect(EmailSignupViewModel).toBeDefined();
|
||||
it('wraps EmailSignupViewData and exposes UI helpers', () => {
|
||||
const viewData: EmailSignupViewData = {
|
||||
email: 'test@example.com',
|
||||
message: 'Thanks for signing up!',
|
||||
status: 'success',
|
||||
};
|
||||
|
||||
const viewModel = new EmailSignupViewModel(viewData);
|
||||
|
||||
expect(viewModel.email).toBe('test@example.com');
|
||||
expect(viewModel.message).toBe('Thanks for signing up!');
|
||||
expect(viewModel.status).toBe('success');
|
||||
|
||||
expect(viewModel.isSuccess).toBe(true);
|
||||
expect(viewModel.isError).toBe(false);
|
||||
expect(viewModel.isInfo).toBe(false);
|
||||
});
|
||||
|
||||
it('reflects error status helpers', () => {
|
||||
const viewData: EmailSignupViewData = {
|
||||
email: 'test@example.com',
|
||||
message: 'Something went wrong',
|
||||
status: 'error',
|
||||
};
|
||||
|
||||
const viewModel = new EmailSignupViewModel(viewData);
|
||||
|
||||
expect(viewModel.isSuccess).toBe(false);
|
||||
expect(viewModel.isError).toBe(true);
|
||||
expect(viewModel.isInfo).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user