website refactor

This commit is contained in:
2026-01-17 22:55:03 +01:00
parent 64d9e7fd16
commit 69d4cce7f1
64 changed files with 1146 additions and 1014 deletions

View File

@@ -39,11 +39,13 @@ describe('AuthService', () => {
const result = await service.signup(params);
expect(mockApiClient.signup).toHaveBeenCalledWith(params);
expect(result).toBeInstanceOf(SessionViewModel);
expect(result.userId).toBe('user-123');
expect(result.email).toBe('test@example.com');
expect(result.displayName).toBe('Test User');
expect(result.isAuthenticated).toBe(true);
expect(result.isOk()).toBe(true);
const vm = result.unwrap();
expect(vm).toBeInstanceOf(SessionViewModel);
expect(vm.userId).toBe('user-123');
expect(vm.email).toBe('test@example.com');
expect(vm.displayName).toBe('Test User');
expect(vm.isAuthenticated).toBe(true);
});
it('should throw error when apiClient.signup fails', async () => {
@@ -56,7 +58,9 @@ describe('AuthService', () => {
const error = new Error('Signup failed');
mockApiClient.signup.mockRejectedValue(error);
await expect(service.signup(params)).rejects.toThrow('Signup failed');
const result = await service.signup(params);
expect(result.isErr()).toBe(true);
expect(result.getError().message).toBe('Signup failed');
});
});
@@ -81,11 +85,13 @@ describe('AuthService', () => {
const result = await service.login(params);
expect(mockApiClient.login).toHaveBeenCalledWith(params);
expect(result).toBeInstanceOf(SessionViewModel);
expect(result.userId).toBe('user-123');
expect(result.email).toBe('test@example.com');
expect(result.displayName).toBe('Test User');
expect(result.isAuthenticated).toBe(true);
expect(result.isOk()).toBe(true);
const vm = result.unwrap();
expect(vm).toBeInstanceOf(SessionViewModel);
expect(vm.userId).toBe('user-123');
expect(vm.email).toBe('test@example.com');
expect(vm.displayName).toBe('Test User');
expect(vm.isAuthenticated).toBe(true);
});
it('should throw error when apiClient.login fails', async () => {
@@ -97,7 +103,9 @@ describe('AuthService', () => {
const error = new Error('Login failed');
mockApiClient.login.mockRejectedValue(error);
await expect(service.login(params)).rejects.toThrow('Login failed');
const result = await service.login(params);
expect(result.isErr()).toBe(true);
expect(result.getError().message).toBe('Login failed');
});
});
@@ -105,16 +113,19 @@ describe('AuthService', () => {
it('should call apiClient.logout', async () => {
mockApiClient.logout.mockResolvedValue(undefined);
await service.logout();
const result = await service.logout();
expect(mockApiClient.logout).toHaveBeenCalled();
expect(result.isOk()).toBe(true);
});
it('should throw error when apiClient.logout fails', async () => {
const error = new Error('Logout failed');
mockApiClient.logout.mockRejectedValue(error);
await expect(service.logout()).rejects.toThrow('Logout failed');
const result = await service.logout();
expect(result.isErr()).toBe(true);
expect(result.getError().message).toBe('Logout failed');
});
});
});