Quando il test non riesce, dove sto confrontando due oggetti usando expect(x).to.deep.equal(y)
, mi piacerebbe vedere i valori reali nel mio rapporto di prova del browser. Invece, vedo qualcosa del genere:Formattazione di oggetti negli errori chai.expect
AssertionError: expected { Object (x, y, ...) } to deeply equal { Object (x, y, ...) }
Quindi non mostra nulla di utile.
C'è un modo per personalizzare il modo in cui chai.js formatta questi oggetti?
Ho una domanda simile pubblicata. Non ho alcuna soluzione, quindi commentando qui: qualcuno può razionalizzare il motivo per cui sarebbe mai utile sputare cose come proprietà di prototipi e funzioni su un oggetto in una asserzione fallita? Questa è una parte enorme del motivo per cui l'output è in genere troppo grande e viene troncato o (se l'impostazione zero troncamento) è assurdamente lungo e difficile da leggere. Sarebbe anche bello avere solo un'opzione per preferire l'utilizzo di toString(), poiché spesso aggiungo tali metodi ai miei oggetti/classi per scopi di sviluppo o altro, che sarebbe molto più utile nell'output di test –
... ecco un link alla domanda simile @JasonBoyd menziona: [Come posso ottenere Chai per mostrare i valori effettivi e previsti usando toString()] (http://stackoverflow.com/q/26980779/1684079). – humbletim