Contenido del curso
Testing helpers
Pruebas a Fields
Pruebas a Forms
Pruebas a Validadores
Continua aplicando testing con Angular
Pruebas para envío de form
Contenido del curso
Pruebas para envío de form
Nicolas Molina
ProfesorAna Velez Ossa
EstudianteHola, debes tener en cuenta que las últimas versiones de FakerJS la importación debe ser así:
import { faker } from '@faker-js/faker';
Código de la prueba
user.mock.ts
import { faker } from '@faker-js/faker'; import { User } from './user.model'; export const generateOneUser = (): User => { return { id: faker.datatype.uuid(), email: faker.internet.email(), password: faker.internet.password(), name: `${faker.name.firstName()} ${faker.name.lastName()}`, role: 'customer' }; } export const generateManyUser = (size = 10): User[] => { const users: User[] = []; for (let index = 0; index < size; index++) { users.push(generateOneUser()); } return [...users]; } ```register-form.component.spec.ts ```ts it('should send the form successfully', () => { component.form.patchValue({ name: 'Ana', email: 'anap@g.com', password: '1222211', confirmPassword: '1222211', checkTerms: true }); const mockUser = generateOneUser(); userService.create.and.returnValue(of(mockUser)); component.register(new Event('submit')); expect(component.form.valid).withContext('validForm').toBeTruthy(); expect(userService.create).withContext('callService').toHaveBeenCalled(); })