Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

493
Views
¿Cómo puedo probar parte del objeto usando Jest?

Me gustaría probar que el tiempo se analiza correctamente y solo estoy interesado en verificar algunas de las propiedades y no todo el objeto. En este caso hora y minutos.

Intenté usar expect(object).toContain(value) pero, como puede ver en el fragmento a continuación, falla aunque el objeto contiene las propiedades que me interesan y tienen el valor correcto.

 ● Calendar > CalendarViewConfig › it should parse time expect(object).toContain(value) Expected object: {"display": "12:54", "full": 774, "hour": 12, "hours": 12, "minutes": 54, "string": "12:54"} To contain value: {"hours": 12, "minutes": 54} 67 | it('it should parse time', () => { 68 | ... > 69 | expect(parseTime('12:54')).toContain({ hours: 12, minutes: 54}) 70 | }) at Object.<anonymous> (src/Components/Views/Calendar/CalendarViewConfig.test.js:69:32)
over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Para verificar si el objeto esperado es un subconjunto del objeto recibido, debe usar toMatchObject(object) :

 expect(parseTime('12:54')).toMatchObject({ hours: 12, minutes: 54})

o expect.objectContaining(object) comparador:

 expect(parseTime('12:54')).toEqual(expect.objectContaining({ hours: 12, minutes: 54}))

funcionan de maneras ligeramente diferentes, consulte ¿Cuál es la diferencia entre '.toMatchObject' y 'objectContaining' para obtener más detalles?

toContain() está diseñado para verificar que un elemento esté en una matriz.

over 4 years ago · Santiago Trujillo Report

0

Si desea probar parte de un objeto dentro de una matriz de objetos , use objectContaining dentro de arrayContaining . Aquí hay un ejemplo:

 test( 'an object in an array of objects', async () => { const bookData = [ { id: 1, book_id: 98764, book_title: 'My New International Book', country_iso_code: 'IN', release_date: '2022-05-24' }, { id: 2, book_id: 98764, book_title: 'My New International Book', country_iso_code: 'GB', release_date: '2022-05-31' }, { id: 3, book_id: 98764, book_title: 'My New International Book', country_iso_code: 'US', release_date: '2022-06-01' } ]; expect( bookData ).toEqual( expect.arrayContaining([ expect.objectContaining( { country_iso_code: 'US', release_date: '2022-06-01' } ) ]) ); } );

Obtuve esto de este artículo de Medium .

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!