Class: RSpec::Core::ConfigurationOptions

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec/core/configuration_options.rb

Overview

Responsible for utilizing externally provided configuration options, whether via the command line, .rspec, ~/.rspec, .rspec-local or a custom options file.

Constant Summary

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (ConfigurationOptions) initialize(args)

Returns a new instance of ConfigurationOptions

Parameters:

  • args (Array<String>)

    command line arguments

11
12
13
14
# File 'lib/rspec/core/configuration_options.rb', line 11
def initialize(args)
  @args = args.dup
  organize_options
end

Instance Attribute Details

- (Array<String>) args (readonly)

Returns the original command-line arguments

Returns:

  • (Array<String>)

    the original command-line arguments

39
40
41
# File 'lib/rspec/core/configuration_options.rb', line 39
def args
  @args
end

- (Hash) options (readonly)

Returns the final merged options, drawn from all external sources

Returns:

  • (Hash)

    the final merged options, drawn from all external sources

36
37
38
# File 'lib/rspec/core/configuration_options.rb', line 36
def options
  @options
end

Instance Method Details

- (void) configure(config)

Updates the provided RSpec::Core::Configuration instance based on the provided external configuration options.

Parameters:

  • config (Configuration)

    the configuration instance to update

20
21
22
23
24
# File 'lib/rspec/core/configuration_options.rb', line 20
def configure(config)
  process_options_into config
  configure_filter_manager config.filter_manager
  load_formatters_into config
end

- (void) configure_filter_manager(filter_manager)

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.

Updates the provided FilterManager based on the filter options.

Parameters:

  • filter_manager (FilterManager)

    instance to update

29
30
31
32
33
# File 'lib/rspec/core/configuration_options.rb', line 29
def configure_filter_manager(filter_manager)
  @filter_manager_options.each do |command, value|
    filter_manager.__send__ command, value
  end
end