首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在命名空间控制器上运行rspec时,nil:NilClass的未定义方法relative_url_root

在命名空间控制器上运行rspec时,nil:NilClass的未定义方法relative_url_root
EN

Stack Overflow用户
提问于 2013-05-08 23:20:07
回答 1查看 399关注 0票数 2

我正在进行从rails 2.3.18升级到3.2.x的工作,我在这一组控制器测试中遇到了一个问题:

错误:

代码语言:javascript
复制
/actionpack-3.2.12/lib/action_controller/test_case.rb:514:in `build_request_uri'
/actionpack-3.2.12/lib/action_controller/test_case.rb:470:in `process'
/actionpack-3.2.12/lib/action_controller/test_case.rb:49:in `process'
/actionpack-3.2.12/lib/action_controller/test_case.rb:390:in `get'
# ./spec/controllers/integrations/formstack_controller_spec.rb:104:in `block (3 levels) in <top (required)>'

代码触发错误:

代码语言:javascript
复制
it "should handle a failed access_token retreival" do
    FormStack::Oauth2Connection.any_instance.stub(:identify).and_return(nil)
    get "oauth_token"   # this line <---------------------------------------------------------------- 104
    response.should redirect_to(:controller => "/integrations/", :action => :index)
    flash[:error].should include("error")
end

此控制器的路由:

代码语言:javascript
复制
namespace :integrations, path: "/integrations" do
    match "formstack/oauth_token", :to => "formstack#oauth_token"
    resources :formstack
end

我的控制器没有什么特别之处:

代码语言:javascript
复制
class Integrations::FormstackController < ApplicationController
    def oauth_token
       ...
    end
end

那么它是关于什么的呢?

代码语言:javascript
复制
get "any_action_in_this_controller"

导致this relative_url_root错误?这个控制器的每一个动作的每一次测试都会引发错误。

我还能提供什么信息来帮助你们帮助我调试这个?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-11 22:44:01

正如@marcario提到的,如果你有:

代码语言:javascript
复制
    def config
    end

在控制器中,你会得到这个(模糊的)错误。只需将config重命名为其他名称,并将路由映射重命名为匹配,您就可以开始工作了。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16444392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档