【发布时间】:2017-02-20 14:40:32
【问题描述】:
我正在尝试编写控制器测试,但 Rspec 没有找到我知道存在且在开发服务器上正常工作的路由。
在我的路由中,我有一个包罗万象的路由,如果有人转到未预定义的路由,它应该重定向到通用控制器。
routes.rb
namespace :tools do
match '*unmatchedpath' => "generic#show", :via => :get
end
generic_controller.rb
def show
# do stuff
end
generic_controller_spec.rb
require 'spec_helper'
describe Tools::GenericController do
describe 'GET show' do
it 'does stuff' do
get :show
end
end
这是我在上面运行测试时从 rspec 得到的错误
1) Tools::GenericController GET show does stuff
Failure/Error: get :show
ActionController::RoutingError:
No route matches {:controller=>"tools/generic", :action=>"show"}
所有路由在我的开发服务器上都按预期工作,所以我不确定为什么 Rspec 没有找到路由。
【问题讨论】:
-
你能运行
rake routes并在这里显示输出吗?
标签: ruby-on-rails ruby ruby-on-rails-3 rspec routing