RSPEC 2: Как Render_Views по умолчанию для всех спецификаций контроллера

StackOverflow https://stackoverflow.com/questions/4401539

Вопрос

Я всегда пишу render_views Во всех характере моего контроллера:

require 'spec_helper'

describe AwesomeController do
  render_views
end

Есть ли способ всегда оказывать вид на все спецификации контроллера?

Это было полезно?

Решение

То документированный способ сделать это, поскольку сегодня следующее

SPEC / Support / 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