我总是在我的所有控制器规范中编写render_views
:
require 'spec_helper'
describe AwesomeController do
render_views
end
有没有办法总是在所有控制器规格上渲染视图?
答案 0 :(得分:13)
答案 1 :(得分:4)
将此添加到spec/spec_helper.rb
:
config.include(Module.new {
def self.included(base)
base.render_views
end
}, :type => :controller)
它创建一个匿名模块,在其包含的类上运行render_views
,并且它包含在描述控制器的任何describe-block中。
答案 2 :(得分:2)
spec_helper.rb
配置。您可以将render_views
添加到rspec配置中,如下所示:
在spec_helper.rb
:
RSpec.configure do |config|
# Renders views in controllers.
config.render_views
# Other config setup.
end
render_views
。您可以使用render_views false
基于每个描述/上下文关闭视图呈现,如下所示:
context "without view rendering even with global render_views on" do
render_views false
# specs without view rendering.
end