【发布时间】:2016-07-14 09:10:17
【问题描述】:
我想检查我的布局是否产生(没有参数或特定内容):
<%= yield %>
<%= yield :something %>
我的视图规范中有这样的内容:
let(:page) { Capybara::Node::Simple.new(rendered) }
before do
# I want to stub the 'yield' stuff here
render
end
it { should have_css 'my yielded stuff' }
但我找不到存根执行的方法。
我更愿意避免使用具有给定布局的示例视图来模拟渲染。
【问题讨论】:
-
你为什么不做 feature 测试?这很简单、优雅且值得。
-
您可以通过
view.instance_variable_get("@view_flow").set(:something, "Hello World")为“命名”收益设置内容,但我不喜欢深入研究 Rails 渲染工作原理的内部结构。如果您的布局缺少主要产量,您的大多数功能测试都应该捕获。
标签: ruby-on-rails ruby rspec rspec-rails