Module: RSpec::Rails

Defined in:
lib/rspec-rails.rb,
lib/rspec/rails/version.rb,
lib/rspec/rails/adapters.rb,
lib/rspec/rails/matchers.rb,
lib/rspec/rails/view_assigns.rb,
lib/rspec/rails/configuration.rb,
lib/rspec/rails/feature_check.rb,
lib/rspec/rails/active_record.rb,
lib/rspec/rails/view_rendering.rb,
lib/rspec/rails/fixture_support.rb,
lib/rspec/rails/view_spec_methods.rb,
lib/rspec/rails/matchers/be_a_new.rb,
lib/rspec/rails/matchers/be_valid.rb,
lib/rspec/rails/view_path_builder.rb,
lib/rspec/rails/matchers/active_job.rb,
lib/rspec/rails/file_fixture_support.rb,
lib/rspec/rails/matchers/redirect_to.rb,
lib/rspec/rails/matchers/be_new_record.rb,
lib/rspec/rails/matchers/have_rendered.rb,
lib/rspec/rails/matchers/have_http_status.rb,
lib/rspec/rails/matchers/routing_matchers.rb,
lib/rspec/rails/example/job_example_group.rb,
lib/rspec/rails/example/job_example_group.rb,
lib/rspec/rails/example/view_example_group.rb,
lib/rspec/rails/example/rails_example_group.rb,
lib/rspec/rails/example/model_example_group.rb,
lib/rspec/rails/example/helper_example_group.rb,
lib/rspec/rails/example/mailer_example_group.rb,
lib/rspec/rails/example/mailer_example_group.rb,
lib/rspec/rails/example/system_example_group.rb,
lib/rspec/rails/example/request_example_group.rb,
lib/rspec/rails/example/feature_example_group.rb,
lib/rspec/rails/example/routing_example_group.rb,
lib/rspec/rails/example/controller_example_group.rb

Overview

Namespace for rspec-rails code.

Defined Under Namespace

Modules: ControllerExampleGroup, FeatureExampleGroup, HelperExampleGroup, JobExampleGroup, MailerExampleGroup, Matchers, ModelExampleGroup, RailsExampleGroup, RequestExampleGroup, RoutingExampleGroup, SystemExampleGroup, Version, ViewAssigns, ViewExampleGroup, ViewRendering, ViewSpecMethods Classes: ActiveRecordConfiguration, Configuration, Railtie, ViewPathBuilder

Constant Summary

DIRECTORY_MAPPINGS =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Mappings used by infer_spec_type_from_file_location!.

{
  :controller => %w[spec controllers],
  :helper     => %w[spec helpers],
  :job        => %w[spec jobs],
  :mailer     => %w[spec mailers],
  :model      => %w[spec models],
  :request    => %w[spec (requests|integration|api)],
  :routing    => %w[spec routing],
  :view       => %w[spec views],
  :feature    => %w[spec features],
  :system     => %w[spec system]
}
Assertions =

Constant aliased to either Minitest or TestUnit, depending on what is loaded.

Test::Unit::Assertions

Class Method Summary (collapse)

Instance Method Summary (collapse)

Class Method Details

+ (Object) add_test_type_configurations(config)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Sets up the different example group modules for the different spec types

43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/rspec/rails/configuration.rb', line 43
def self.add_test_type_configurations(config)
  config.include RSpec::Rails::ControllerExampleGroup, :type => :controller
  config.include RSpec::Rails::HelperExampleGroup,     :type => :helper
  config.include RSpec::Rails::ModelExampleGroup,      :type => :model
  config.include RSpec::Rails::RequestExampleGroup,    :type => :request
  config.include RSpec::Rails::RoutingExampleGroup,    :type => :routing
  config.include RSpec::Rails::ViewExampleGroup,       :type => :view
  config.include RSpec::Rails::FeatureExampleGroup,    :type => :feature
  config.include RSpec::Rails::Matchers
  if ActionPack::VERSION::STRING >= "5.1"
    begin
      require 'puma'
      require 'capybara'
      config.include RSpec::Rails::SystemExampleGroup, :type => :system
    # rubocop:disable Lint/HandleExceptions
    rescue LoadError
      # rubocop:enable Lint/HandleExceptions
    end
  end
end

Instance Method Details

- (Object) infer_spec_type_from_file_location!

Automatically tag specs in conventional directories with matching type metadata so that they have relevant helpers available to them. See RSpec::Rails::DIRECTORY_MAPPINGS for details on which metadata is applied to each directory.


    
# File 'lib/rspec/rails/configuration.rb', line 6

- (Object) render_views(val)

Enables view rendering for controllers specs.


    
# File 'lib/rspec/rails/configuration.rb', line 17

- (Object) render_views=(val)

When set to true, controller specs will render the relevant view as well. Defaults to false.


    
# File 'lib/rspec/rails/configuration.rb', line 12

- (Object) render_views?

Reader for currently value of render_views setting.


    
# File 'lib/rspec/rails/configuration.rb', line 20