0

アクティブな管理コントローラーをテストするための仕様をいくつか設定しました。

it "assigns the requested blog to @blog" do
  @blog = FactoryGirl.create(:blog)
  get :show, id: @blog
  assigns(:blog).should eq(@blog) 
end

このスペック ファイルを個別に実行すると、すべて緑色になりますが、すべてのスペックを実行すると、次のエラーが発生します。

Failure/Error: get :show, :id => @blog
         ActionView::Template::Error:
           No route matches {:id=>#<User id: nil, role: nil, phone: nil, name: nil, firm_id: nil, hourly_rate: nil, loginable_type: nil, loginable_id: nil, loginable_token: nil, created_at: nil, updated_at: nil, avatar_file_name: nil, avatar_content_type: nil, avatar_file_size: nil, avatar_updated_at: nil, email: "", encrypted_password: "", reset_password_token: nil, reset_password_sent_at: nil, remember_created_at: nil, sign_in_count: 0, current_sign_in_at: nil, last_sign_in_at: nil, current_sign_in_ip: nil, last_sign_in_ip: nil>, :controller=>"admin/blogs", :action=>"edit", :format=>nil} missing required keys: [:id]

何が問題なのですか?

4

0 に答える 0