Class: RSpec::Core::ConfigurationOptions

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args) ⇒ ConfigurationOptions

Returns a new instance of ConfigurationOptions.


9
10
11
# File 'lib/rspec/core/configuration_options.rb', line 9

def initialize(args)
  @args = args
end

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options


7
8
9
# File 'lib/rspec/core/configuration_options.rb', line 7

def options
  @options
end

Instance Method Details

#configure(config) ⇒ Object


13
14
15
16
17
18
19
20
21
22
23
# File 'lib/rspec/core/configuration_options.rb', line 13

def configure(config)
  formatters = options.delete(:formatters)

  config.filter_manager = filter_manager

  order(options.keys, :libs, :requires, :default_path, :pattern).each do |key|
    force?(key) ? config.force(key => options[key]) : config.send("#{key}=", options[key]) 
  end

  formatters.each {|pair| config.add_formatter(*pair) } if formatters
end

#drb_argvObject


31
32
33
# File 'lib/rspec/core/configuration_options.rb', line 31

def drb_argv
  DrbOptions.new(options, filter_manager).options
end

#filter_managerObject


35
36
37
# File 'lib/rspec/core/configuration_options.rb', line 35

def filter_manager
  @filter_manager ||= FilterManager.new
end

#parse_optionsObject


25
26
27
28
29
# File 'lib/rspec/core/configuration_options.rb', line 25

def parse_options
  @options ||= extract_filters_from(*all_configs).inject do |merged, pending|
    merged.merge(pending)
  end
end