2017-02-04 10 views
2

私はこのようなテストを持っている:letの変数を共有の例に渡すにはどうしたらいいですか?

describe 'event creation' do 
    let(:user) { create :user } 
    ... 
    it_behaves_like 'also creates public_activity record', user 
end 

LETからの変数は一例コンテキストからアクセスされていることから、私はpublic_activityが正しく作成されたかどうかを確認するためにユーザレコードが必要ですが、上記の例では動作しません。

私はこの回避策を作った:それは作品

describe 'event creation' do 
    let(:user) { create :user } 
    ... 

    describe 'public activity' do 
    before { @user = user } 
    it_behaves_like 'also creates public_activity record', @user 
    end 
end 

が、私は非常に多く、このアプローチは好きではありません。これを達成するためのより良い方法はありますか?

答えて

1

it_behaves_likeの代わりにinclude_examplesを試してみてください。テストケースは現在のコンテキストを使用します。

関連する問題