mongoid で新しい Rails アプリを作成すると、次のようになります。
rails new tddapp --skip-active-record
cd tddapp
echo "gem 'mongoid'" >> Gemfile
bundle
rails g mongoid:config
次に、単純な足場を生成します。
rails g scaffold building height:Integer name:String
スキャフォールディングが作成され、最小限のアプリが問題なく動作します。しかし、足場で生成されたテストは次のように失敗します。
NoMethodError: undefined method `buildings' for #<BuildingsControllerTest:0x007fa6afbf78d8>
問題のある行は、テスト コントローラーがフィクスチャを見つけられないことを示しています。
@building = buildings(:one)
mongoid ジェネレーターはtest/fixtures/buildings.yml
、足場の機能テストの全体的なアイデアとのある程度の協力を示すフィクスチャを作成するのに十分でした。
機能テストで mongoid のフィクスチャをロードするために、構成設定または変更する必要があるものはありますか? それとも、足場の機能テストはモンゴイドで失敗すると予想されますか? (もしそうなら、なぜ mongoid はわざわざフィクスチャ ファイルを作成するのでしょうか?)