すべてのコントローラ テスト用にいくつかのファクトリをロードする方法はありますか? すべてのコントローラー テスト (メニュー項目) に必要ないくつかを持っていますが、それらすべてをコントローラーに個別に配置するのは好きではありません。あまり乾燥していません:)
ありがとう
すべてのコントローラ テスト用にいくつかのファクトリをロードする方法はありますか? すべてのコントローラー テスト (メニュー項目) に必要ないくつかを持っていますが、それらすべてをコントローラーに個別に配置するのは好きではありません。あまり乾燥していません:)
ありがとう
たぶん、ここで強調表示されているrspecの共有コンテキストを見ることができます:https ://www.relishapp.com/rspec/rspec-core/v/2-11/docs/example-groups/shared-context
RSpec マクロを作成します。
使用userしたいファクトリとして使用すると、次の例が表示されますspec/support/controller_macros.rb。
module ControllerMacros
let!(:user) { FactoryGirl.create :user }
end
spec/spec_helper.rbコントローラーのマクロをインクルードします。
RSpec.configure do |config|
config.extend ControllerMacros, :type => :controller
end
は、ブロック内で参照されているかのlet!ようです。letbefore
メソッドなどを追加するのControllerMacrosにも便利な場所です。sign_in
共有の例を入れることもできspec/supportます。