モカを使用して単体テストを実行するノードアプリに取り組んでいます。
このコマンドを実行すると:
mocha --compilers coffee:coffee-script --reporter spec ./test/unit/*-test.coffee
次のエラーが表示されます。
ERROR: Unknown option --compilers
それは間違いなくコンパイラオプションを持っているので、モカは混乱しているようです。このエラーは、プロジェクトに新しいファイルを追加したときに発生し始めました。モカに生成させることができる唯一の出力です。--debug は何もしません。
personというパッケージがインストールされているとしましょう。このパッケージをグローバルに構成して、構成済みのオブジェクトをプロジェクトのどこにでもインポートできるようにしたいと考えています。そのために、person をインポートし、それをドライバーとして構成してから、再度エクスポートします。
ただし、(Car.coffee または Car-test.coffee のいずれかで) インポートすると、mocha は上記のエラーで失敗します。
ドライバーコーヒー
driver = require 'person'
driver.setSkill "Drive"
module.exports = driver
カーコーヒー
driver = require './driver'
...
カーテスト.コーヒー
driver = require '../../src/driver'
...
コーヒーを使用してコンパイルし、ノード プロジェクトを実行している場合、これは正常に機能することに注意してください。そこにインポートしても問題ありません。しかし、mocha で実行すると、ファイルをインポートすると失敗します。
エラーを正確に特定することはできません。モカのバグのように思えますが、インポートしたオブジェクトと同じオブジェクトをエクスポートすることで「悪い」ことをしている可能性があり、ノードはより寛容ですか?
モカの最新バージョン(1.13.0)を使用しています。ありがとう!
編集:
これはエラーを修正せず、構文的に理想的ではありません。
person = require 'person'
class driver
constructor: ->
person.setSkill "Drive"
@person = person
module.exports = driver
単純なオブジェクトでラップするだけでは機能しないことに注意してください。
編集2:
動作しない他のものは次のとおりです。
configure-driver.coffee
configureDriver = (person) ->
person.setSkill "Drive"
module.exports = configureDriver
カー.コーヒー
driver = require('./configure-driver')(require 'person')
Mocha は以前と同じエラーをスローします。