我用Rails(4.1.16)和Rspec(3.5.1)生成了一個腳手架。爲什麼我的rspec-rails生成的spec由於路由異常而失敗?
它產生此試驗:
describe "GET #show" do
it "assigns the requested team as @team" do
team = Team.create! valid_attributes
get :show, params: {id: team.to_param}, session: valid_session
expect(assigns(:team)).to eq(team)
end
end
其輸出這樣的錯誤:
TeamsController GET #show assigns the requested team as @team
Failure/Error: get :show, params: {id: team.to_param}, session: valid_session
ActionController::UrlGenerationError:
No route matches {:action=>"show", :controller=>"teams", :params=>{:id=>"82"}, :session=>{}}
如果刪除了鍵參數以get
,即:
get :show, {id: team.to_param}, valid_session
測試傳球很好。
不確定什麼gem定義了生成器模板(rspec-rails?)以及爲什麼我得到這個錯誤。幫助將不勝感激理解這個問題。謝謝。
太棒了。謝謝。 –