私は次のモカモックを持っています。モカモックを解体する方法は?
test.rbファイルで:
setup do
Date.stubs(:today).returns(Date.new(2011, 7, 19))
Time.stubs(:now).returns(Time.new(2011,1,1,9,0))
end
問題はタイミングがテストのために壊れているということです。テストは、日付と時刻オブジェクトを実行した後、まだ嘲笑されている
Finished in -21949774.01594216 seconds.
私は次のように付け加えた。(!):
teardown do
Date.unstubs(:today)
Time.unstubs(:now)
end
これは、各テストのために次のエラーがスローされます。WARNING: there is already a transaction in progress
これはアンスタンドするのに適切な方法ですか?テストファイルの終わりで、またはユニットテストスイートの終わりでもアンスタブする方が良いでしょうか?
Rails 3.07とMochaで作業する0.9.12
ありがとうございました。
テストの間でアンスタブする必要はありません。各テストは一から始まります。 "unstub"の使用例は、設定の一部としてものをスタブするテストグループがある場合ですが、そのグループ内のテストの一部は、その一部をスタブしないようにする必要があります。 –
「unstubs」ではなく「unstub」は、複数形です。「unstubs、unstubs」私はモカのここでの動詞の選択は矛盾していると思います。 –