Zapewnienie, że aplikacja Express działa przed każdym testem Mocha

Pracuję nad rozwojem API REST przy użyciu ExpressJS, NodeJS, Mongoose i Mocha.

Rzecz w tym, że mam plik app.coffee, odpowiedzialny za konfigurację ExpressJS i łączenie się z Mongoose. Sposób, w jaki to ustawiłem, polega na tym, że Mongoose jest najpierw podłączony, a jeśli to się uda, uruchamiana jest aplikacja ExpressJS.

Problem polega na tym, że podczas konfigurowania Mocha, muszę upewnić się, że aplikacja ExpressJS istniejąca w app.coffee jest całkowicie pomyślnie uruchomiona, włączając cały kod asynchroniczny przed wykonaniem jakiegokolwiek testcase.

W tym celu utworzyłem test_helper.coffee i umieściłem w nim następujący kod, ale testcases rozpoczynają ich wykonanie, nawet jeśli kod w app.coffee nie zakończył całkowicie wykonania, co ma sens:

before (done) ->
  require(__dirname + '/../src/app')
  done()

W skrócie, chcę się upewnić, że aplikacja ExpressJS w pełni zakończyła konfigurację, zanim zostanie wykonana jakakolwiek skrzynka testowa.

Jak mogę to zrobić?

questionAnswers(6)

yourAnswerToTheQuestion