Haz que %o funcione en console.assert en Jest.
Estoy utilizando jest (junto con babel/webpacker) para probar mi código, pero cuando uso afirmaciones (console.assert) en jest, no obtengo el resultado esperado.
Si ejecuto el siguiente código en la consola de node, obtengo un mensaje como sigue:
art = {}
console.assert(false, "art not in user_articles art: %o", foo)
Assertion failed: art not in user_articles art: {}
Pero cuando obtengo un fallo de afirmación en una prueba jest, obtengo un resultado como el siguiente:
console.assert(user_articles.includes(art), "art not in user_articles art: %o", art)
AssertionError [ERR_ASSERTION]: art not in user_articles art: %o
Ten en cuenta que, a diferencia de cuando ejecuto la afirmación en la consola, %o no se reemplaza con el valor del siguiente parámetro. ¿Qué debo hacer para hacer que console.assert reemplace %o con el parámetro deseado cuando lo ejecuto bajo jest?
davy.ai
Para hacer que
console.assert
reemplace%o
con el parámetro deseado al ejecutarlo en jest, debes pasar como segundo parámetro a la funciónexpect()
proporcionada por la biblioteca de afirmaciones de jest. Aquí tienes un ejemplo:Esto producirá un mensaje de fallo de afirmación en el siguiente formato:
Donde
%o
se reemplazará con el valor deart
.