-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test de modelo #43
Comments
Hola Fede. Saludos. |
No entiendo bien el enunciado, al principio pensé en algo como que el modelo iguale la tabla de la DB pero no estoy seguro ni sabría cómo se hace tampoco. Si pudiera ver el código sabría mejor donde ubicarlo |
Lo que tenes que probar es el modelo. Esto no involucra la interfaz de usuario ni la API.
Cuando digo modelo me refiero al archivo Se que prometí pasar el código pero espero hacerlo en ultimas instancias. |
Traté con el siguiente codigo: test('Modelo que permite obtener todas las películas', async () => {
const movieData = {
title: 'Jurassic Park',
description: 'During a preview tour, a theme park suffers a major power breakdown that allows its cloned dinosaur exhibits to run amok.',
year: 1993,
runtime: 127,
country: 'United States',
language: 'English',
genres: ['Adventure', 'Sci-Fi', 'Thriller'],
directors: ['Steven Spielberg'],
writers: ['Michael Crichton', 'Michael Crichton', 'David Koepp']
};
const movie = await MovieModels.create(movieData)
const recivedMovies = await MovieModels.getAll()
expect(recivedMovies).toContainEqual(movie)
}); Pero me tira el siguiente error: Debería usar algo distinto a |
Si, usa toBe en cada propiedad del modelo |
No sabría como usar toBe para que recorra el array y encuentre la pelicula, lo plantie distinto, estaría bien así? test('Modelo que permite obtener todas las películas', async () => {
const movieData = {
title: 'Jurassic Park',
description: 'During a preview tour, a theme park suffers a major power breakdown that allows its cloned dinosaur exhibits to run amok.',
year: 1993,
runtime: 127,
country: 'United States',
language: 'English',
genres: ['Adventure', 'Sci-Fi', 'Thriller'],
directors: ['Steven Spielberg'],
writers: ['Michael Crichton', 'Michael Crichton', 'David Koepp']
};
const movie = await MovieModels.create(movieData)
const recivedMovies = await MovieModels.getAll()
expect(recivedMovies).toEqual(
expect.arrayContaining([
expect.objectContaining({
title: 'Jurassic Park',
description: 'During a preview tour, a theme park suffers a major power breakdown that allows its cloned dinosaur exhibits to run amok.',
year: 1993,
runtime: 127,
country: 'United States',
language: 'English',
genres: ['Adventure', 'Sci-Fi', 'Thriller'],
directors: ['Steven Spielberg'],
writers: ['Michael Crichton', 'Michael Crichton', 'David Koepp']
})
])
)
});
El test finaliza sin errores: |
No, deberías checkear todas las propiedades de las películas. Algo asi: expect(recivedMovies.title).toEqual(movieData.title)
expect(recivedMovies.description).toEqual(movieDate.description) Así con todas las propiedades. No pongas el test completo 🚓 👮♂️. Cualquier cosa escribie a [email protected] |
Hola, necesitaría el código para un test que pruebe que el modelo de películas permite obtener todas las películas.
Saludos
The text was updated successfully, but these errors were encountered: