我总是在写作 render_views 在我所有的控制器规格中:

require 'spec_helper'

describe AwesomeController do
  render_views
end

有没有办法始终在所有控制器规格上渲染视图?

有帮助吗?

解决方案

有记录的 这样做的方法,截至今天如下

规范/支持/render_views.rb

RSpec.configure do |config|
  config.render_views
end

其他提示

此添加到spec/spec_helper.rb

config.include(Module.new {
  def self.included(base)
    base.render_views
  end
}, :type => :controller)

它创建一个匿名模块,即运行render_views上它被包括在类,并且其被包括的是描述了控制器的任何描述块上。

添加到您的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
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top