0
我正在嘗試使用複選框更新我的索引視圖。邏輯工作正常,但我的控制器規格失敗,我不明白爲什麼。我想知道我的語法是否有問題。增量與我的功能測試一起工作,但與控制器規格無關。測試的相關部分如下:控制器規範未按預期增加計數
describe "PUT complete" do
it "it archives a diagnostic info report" do
diagnostic = FG.create(:diagnostic_info)
puts DiagnosticInfo.all.size
expect {
put :complete, :diagnostic_ids => [diagnostic.id]
}.to change(DiagnosticInfo.all, :size).by(-1)
response.should redirect_to(admin_diagnostics_path)
end
end
失敗的測試我收到的是:
1) Admin::DiagnosticsController PUT complete it archives a diagnostic info report
Failure/Error: put :complete, :diagnostic_ids => [diagnostic.ids]
NoMethodError:
undefined method `ids' for #<DiagnosticInfo:0x0000000827c678>
# ./spec/controllers/admin/diagnostics_controller_spec.rb:53:in `block (4 levels) in <top (required)>'
# ./spec/controllers/admin/diagnostics_controller_spec.rb:52:in `block (3 levels) in <top (required)>'
# -e:1:in `<main>'
您能告訴我們您的DiagnosticsController嗎? –
失敗錯誤提到'diagnostic.ids',你的代碼是'diagnostic.id' ...在某處出現錯誤。 – pierallard