Factory GirlでRspecを使用する。コントローラに割り当てられているデータを確認しようとしています(そしてそれに対してテストしています)。私が読んだすべての投稿は、assigns()から何かを取得できるはずだと言っていますが、それでもnillが返され続けます
コントローラ
def index
@stickies = Sticky.where(:user_id => current_user.id)
end
Spec
it "should assign stickies" do
foo = assigns(:stickies)
puts "foo = #{foo}"
end
出力
foo =
間違った構文を使用していますか?これを行うより良い方法はありますか?ありがとう!!
最初にアクションを呼び出す必要があります
describe StickiesController do
describe "GET index" do
it "should assign stickies" do
get :index
assigns(:stickies).should_not be_nil
end
end
end
Rspec> 2.99を使用している場合は、以下を使用できます。
expect(assigns(:stickies)).not_to be_nil