gpt4 book ai didi

rspec2 - RSpec 2 使用 allocate 来指定 View 规范

转载 作者:行者123 更新时间:2023-12-02 02:15:38 25 4
gpt4 key购买 nike

我觉得我错过了一些非常基本的东西,但我似乎也无法弄清楚。

当执行以下规范时:

require 'spec_helper'

describe "/mymodel/show.html.erb" do
before(:each) do
@mymodel = Factory(:mymodel)
@user = Factory(:user)
assign(:web_tip, @mymodel)
assign(:current_user, @user)
end

it "renders attributes in <p>" do
render
rendered.should have_text(/somevalue/)
end
end

我收到一个错误,指出局部变量 current_user 未定义( View 的布局想要调用它来显示当前的登录状态)。

我使用的是 Rails 3、Rspec 2.6.4,并且认为我正确遵循了当前文档。

最佳答案

这个已经很旧了,但为了 Google 的缘故:

assign 仅创建实例变量。但是,current_user 是一个辅助方法(或局部变量)。假设您不完全依赖 View 测试,您可以使用以下 before block 使其工作:

before(:each) do
view.stub(:current_user) { User.new }
end

关于rspec2 - RSpec 2 使用 allocate 来指定 View 规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7021136/

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