Necesitaría algunos consejos, actualmente me gustaría probar que cada objeto en una colección de objetos tiene la estructura correcta, así que hago esto:
const allExercises = listAllExercises() describe("listAllExercises | should return all exercises", () => { test("Each exercise should have the right structure", () => { const keys = [ "name", "execution", "level", "is_poly_articular", "practice", "gender", "body_focus", ] allExercises.forEach((exercise) => { expect(Object.keys(exercise).sort()).toEqual(keys.sort()) }) }) })Funciona muy bien, pero quería saber si este era el camino correcto, ¿tienen una mejor solución para probar las claves de un objeto con broma?
Puedes comprobarlo con arrayContaining(array)
const expectedKeys = [ "name", "execution", "level", "is_poly_articular", "practice", "gender", "body_focus", ]; expect(array).toEqual(expect.arrayContaining(expectedKeys));Comprueba la matriz esperada como un subconjunto del valor recibido, por lo que funciona con un orden diferente, pero con las mismas claves presentes.