如何设法测试 Task :: HoursController ? 来自我的rspec测试的请求命中 HoursController ,而不是 Task :: HoursController
路线
# POST /tasks/:task_id/hours(.:format) tasks/hours#create
测试
describe Tasks::HoursController, :type => :controller do
it "assigns all hours as @hours" do
hour = Hour.create! valid_attributes
get :index, { task_id: @task.id }, valid_session
assigns(:hours).should eq([hour])
end
end
日志输出
Processing by HoursController#index as HTML
Parameters: {"task_id"=>"207"}
Completed 500 Internal Server Error in 3ms
答案 0 :(得分:0)
我想你需要删除Tasks命名空间(另请注意,在你的描述中你使用单数和代码复数)
并将describe块放在具有任务名称空间的模块中。
module Tasks
describe HoursController do
it "assigns all hours as @hours" do
hour = Hour.create! valid_attributes
get :index, { task_id: @task.id }, valid_session
assigns(:hours).should eq([hour])
end
end
end
答案 1 :(得分:0)
你们很难看到,因为我没有将代码发布到我的控制器上。
修复是这样的:
-class Tasks::HoursSpentController < ApplicationController
+module Tasks
+ class HoursSpentsController < ApplicationController
建议@ vince-v发布。 谢谢文斯。 : - )