Class: MutatorRails::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/mutator_rails/config.rb

Constant Summary collapse

USER_CONFIG =
Pathname(Dir.pwd).join('mutator_rails.yml').freeze

Class Method Summary collapse

Class Method Details

.configurationObject



15
16
17
# File 'lib/mutator_rails/config.rb', line 15

def configuration
  @configuration ||= load_configuration
end

.load_configurationObject



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/mutator_rails/config.rb', line 19

def load_configuration
  default_config = YAML.load_file(CONFIG_DEFAULT)
  user_config    = if USER_CONFIG && File.exist?(USER_CONFIG.to_s)
                     YAML.load_file(USER_CONFIG)
                   else
                     {}
                   end

  consolidated = default_config.merge(user_config)

  JSON.parse(consolidated.to_json, object_class: OpenStruct).freeze
end