我正在尝试编写控制器测试,而Rspec没有找到我知道存在的路由并且在开发服务器上正常工作。
在我的路线中,我有一条全能路线,如果有人前往未预定义的路线,则应重新定向到通用控制器。
的routes.rb
function tail(list) {
return list.splice(-1, 1)
}
function request(urls, param) {
if (urls.length <= 0) return param;
return Rx.DOM.ajax({
url: urls[0] + '?param=' + param,
responseType: 'json'
})
.map(data => data.response.xyz)
.flatMap(response => request(tail(urls), response));
}
request(["http://example.org/foo", "http://example.org/bar", "..."], 0)
.subscribe(...)
generic_controller.rb
namespace :tools do
match '*unmatchedpath' => "generic#show", :via => :get
end
generic_controller_spec.rb
def show
# do stuff
end
这是我在运行上面的测试时从rspec获得的错误
require 'spec_helper'
describe Tools::GenericController do
describe 'GET show' do
it 'does stuff' do
get :show
end
end
所有路由在我的开发服务器上按预期工作,所以我不确定为什么Rspec没有找到路由。
答案 0 :(得分:1)
尝试:
get '*unmatchedpath' => 'tools/generic#show'