¿Pruebas Qunit no deterministas en el Plugin?

Parece que me estoy encontrando con una condición de carrera en Qunit, en mi caso ejecutando:

rake "plugin:qunit[discourse-multilingual]" con una rama instalada.

Estoy declarando una función en mi inicializador (estoy extendiendo I18n)
Las pruebas a veces (¿25%?) parecen ejecutarse antes de que se haya ejecutado el inicializador de ember del plugin y fallan porque la función no está definida.

¿Cómo aseguro que el js del inicializador del plugin se ha ejecutado antes de que se dispare la prueba?

prueba:

definición:

error intermitente:
TypeError: _I18n.default.translate_tag is not a function

OK, lo resolví refactorizando. Moví mi función de I18n a un módulo multilingüe existente.

¡Al parecer, extender I18n aquí no es confiable en todos los escenarios, y menos aún en las pruebas unitarias!

1 me gusta