Module: RSpec

Extended by:
Core::Deprecation
Defined in:
lib/rspec/core.rb,
lib/rspec/core/dsl.rb,
lib/rspec/core/hooks.rb,
lib/rspec/core/world.rb,
lib/rspec/core/runner.rb,
lib/rspec/core/version.rb,
lib/rspec/core/example.rb,
lib/rspec/core/pending.rb,
lib/rspec/core/metadata.rb,
lib/rspec/core/rake_task.rb,
lib/rspec/core/deprecation.rb,
lib/rspec/core/ruby_project.rb,
lib/rspec/core/command_line.rb,
lib/rspec/core/configuration.rb,
lib/rspec/core/example_group.rb,
lib/rspec/core/shared_context.rb,
lib/rspec/core/filter_manager.rb,
lib/rspec/core/mocking/with_rr.rb,
lib/rspec/core/drb_command_line.rb,
lib/rspec/core/memoized_helpers.rb,
lib/rspec/core/backtrace_cleaner.rb,
lib/rspec/core/mocking/with_rspec.rb,
lib/rspec/core/formatters/helpers.rb,
lib/rspec/core/extensions/ordered.rb,
lib/rspec/core/mocking/with_mocha.rb,
lib/rspec/core/project_initializer.rb,
lib/rspec/core/shared_example_group.rb,
lib/rspec/core/mocking/with_flexmock.rb,
lib/rspec/core/configuration_options.rb,
lib/rspec/core/metadata_hash_builder.rb,
lib/rspec/core/backward_compatibility.rb,
lib/rspec/core/formatters/html_printer.rb,
lib/rspec/core/formatters/json_formatter.rb,
lib/rspec/core/formatters/base_formatter.rb,
lib/rspec/core/formatters/html_formatter.rb,
lib/rspec/core/formatters/snippet_extractor.rb,
lib/rspec/core/formatters/progress_formatter.rb,
lib/rspec/core/formatters/text_mate_formatter.rb,
lib/rspec/core/formatters/base_text_formatter.rb,
lib/rspec/core/shared_example_group/collection.rb,
lib/rspec/core/mocking/with_absolutely_nothing.rb,
lib/rspec/core/extensions/module_eval_with_args.rb,
lib/rspec/core/formatters/deprecation_formatter.rb,
lib/rspec/core/formatters/documentation_formatter.rb,
lib/rspec/core/extensions/instance_eval_with_args.rb

Defined Under Namespace

Modules: Core, Runner

Constant Summary

MODULES_TO_AUTOLOAD =
{
  :Matchers     => "rspec/expectations",
  :Expectations => "rspec/expectations",
  :Mocks        => "rspec/mocks"
}
SharedContext =
Core::SharedContext

Class Method Summary (collapse)

Class Method Details

+ (Object) configuration

Returns the global Configuration object. While you can use this method to access the configuration, the more common convention is to use RSpec.configure.

Examples:

RSpec.configuration.drb_port = 1234

See Also:



87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# File 'lib/rspec/core.rb', line 87

def self.configuration
  if block_given?
    RSpec.warn_deprecation <<-WARNING

*****************************************************************
DEPRECATION WARNING

* RSpec.configuration with a block is deprecated and has no effect.
* please use RSpec.configure with a block instead.

Called from #{caller(0)[1]}
*****************************************************************

WARNING
  end
  @configuration ||= RSpec::Core::Configuration.new
end

+ (Object) configure {|Configuration| ... }

Yields the global configuration to a block.

Examples:

RSpec.configure do |config|
  config.add_formatter 'documentation'
end

Yields:

  • (Configuration)

    global configuration

See Also:



119
120
121
# File 'lib/rspec/core.rb', line 119

def self.configure
  yield configuration if block_given?
end

+ (Object) const_missing(name)



152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# File 'lib/rspec/core.rb', line 152

def self.const_missing(name)
  # Load rspec-expectations when RSpec::Matchers is referenced. This allows
  # people to define custom matchers (using `RSpec::Matchers.define`) before
  # rspec-core has loaded rspec-expectations (since it delays the loading of
  # it to allow users to configure a different assertion/expectation
  # framework). `autoload` can't be used since it works with ruby's built-in
  # require (e.g. for files that are available relative to a load path dir),
  # but not with rubygems' extended require.
  #
  # As of rspec 2.14.1, we no longer require `rspec/mocks` and
  # `rspec/expectations` when `rspec` is required, so we want
  # to make them available as an autoload. For more info, see:
  require MODULES_TO_AUTOLOAD.fetch(name) { return super }
  ::RSpec.const_get(name)
end