gpt4 book ai didi

ruby-on-rails - 命名路由作为参数,例如 rspec 中的组

转载 作者:行者123 更新时间:2023-12-04 05:14:56 24 4
gpt4 key购买 nike

我是测试和使用 RSpec 的新手,需要一些帮助:

我分享了示例组:

shared_examples_for 'request which do something' do |opts = {}|
respond.should redirect_to(opts[:redirect_to])
end

在我的规范文件中:
describe "behavior" do
it_should_behave_like 'request which do something', :redirect_to => root_path
end

看起来不错,但我收到此错误:
Exception encountered: #<NameError: undefined local variable or method `root_path' for #<Class:0x000000069e2838>>

它指向“it_should_behave_like ...”

我试图包括 Rails.application.routes.url_helper 在 spec_helper 中,但无论如何它都不起作用。

顺便说一下,它从这样的例子中完美地工作:
describe "behavior" do
it "should redirect" do
response.should redirect_to(root_path)
end
end

(即使没有明确包括 url_helpers)

感谢您的帮助。

最佳答案

您不能在示例组中使用路径助手,但有一个解决方法。看到这个答案:

Passing a named route to a controller macro in RSpec

有了这个,你可以传递一个符号并使用 send .

关于ruby-on-rails - 命名路由作为参数,例如 rspec 中的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14405092/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com