en mi prueba
it("should list all tickets", async () => { const getTicket = await request(app) .get("/v1/ticket") .set("authorization", loginResponse.body.accessJWT); console.log(getTicket.body.result); console.log(getTicket.body.result[0].conversations); expect(getTicket.body.result).toEqual( expect.arrayContaining([ expect.objectContaining({ // _id: expect.any(String), // status: "pending response", openAt: expect.any(Date), conversations: expect.arrayContaining([ expect.objectContaining({ // sender: expect.any(String), msgAt: expect.any(String), // message: expect.any(String), }), ]), }), ]) ); });});
Estoy comprobando si el valor de openAt y msgAt es un valor de fecha. Pero el valor de la fecha se guarda en forma de cadena similar a
"msgAt": "2021-12-22T08:29:15.038Z",¿Cómo comprobar si el valor de openAt será una fecha guardada en formato de cadena?
Probablemente podrías simplemente hacer lo siguiente:
expect(new Date(msgAt)).toBeInstanceOf(Date);Convertir el valor devuelto en una Fecha y verificar si es una fecha. Si el valor no es convertible a la fecha, la prueba fallará.