import { createAuthProvider, createUser } from './config'; import { describe, expect, it } from 'vitest'; describe('login', async () => { it('should fail with empty username and password', async () => { const authProvider = createAuthProvider(); await expect(authProvider.login({ username: '', password: '' })).rejects.toThrow('iam.error.invalid-credentials'); }); it('should fail login because not active', async () => { const authProvider = createAuthProvider(); const user = createUser(); const response = await authProvider.register(user); expect(response).toBeDefined(); await expect( authProvider.login({ username: user.email, password: user.password }) ).rejects.toThrow('iam.error.invalid-credentials'); }); it('should login', async () => { const authProvider = createAuthProvider(); const user = createUser(); const response = await authProvider.register(user); expect(response).toBeDefined(); const activationCode = response.userId.substring(0, 6); const activateResponse = await authProvider.activate(activationCode); expect(activateResponse).toBeDefined(); const loginResponse = await authProvider.login({ username: user.email, password: user.password }); expect(loginResponse).toBeDefined(); expect(loginResponse?.user).toBeDefined(); }); });