Sha256: ff6ea92011866222bfe91dd102da922f70bac10b37dfb635829b16404bbfaec6

Contents?: true

Size: 920 Bytes

Versions: 17

Compression:

Stored size: 920 Bytes

Contents

require 'ceedling/constants'


class ProjectConfigManager

  attr_reader   :options_files, :release_config_changed, :test_config_changed
  attr_accessor :config_hash

  constructor :cacheinator, :yaml_wrapper


  def setup
    @options_files = []
    @release_config_changed = false
    @test_config_changed    = false
  end


  def merge_options(config_hash, option_filepath)
    @options_files << File.basename( option_filepath )
    config_hash.deep_merge( @yaml_wrapper.load( option_filepath ) )
    return config_hash
  end 
  

  
  def process_release_config_change
    # has project configuration changed since last release build
    @release_config_changed = @cacheinator.diff_cached_release_config?( @config_hash )
  end


  def process_test_config_change
    # has project configuration changed since last test build
    @test_config_changed = @cacheinator.diff_cached_test_config?( @config_hash )
  end

end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
ceedling-0.25.0 lib/ceedling/project_config_manager.rb
ceedling-0.24.0 lib/ceedling/project_config_manager.rb
ceedling-0.22.0 lib/ceedling/project_config_manager.rb
ceedling-0.21.0 lib/ceedling/project_config_manager.rb
ceedling-0.20.3 lib/ceedling/project_config_manager.rb
ceedling-0.20.2 lib/ceedling/project_config_manager.rb
ceedling-0.19.0 lib/ceedling/project_config_manager.rb
ceedling-0.18.0 lib/ceedling/project_config_manager.rb
ceedling-0.17.0 lib/ceedling/project_config_manager.rb
ceedling-0.16.0 lib/ceedling/project_config_manager.rb
ceedling-0.15.6 lib/ceedling/project_config_manager.rb
ceedling-0.15.5 lib/ceedling/project_config_manager.rb
ceedling-0.15.4 lib/ceedling/project_config_manager.rb
ceedling-0.15.3 lib/ceedling/project_config_manager.rb
ceedling-0.15.2 lib/ceedling/project_config_manager.rb
ceedling-0.15.1 lib/ceedling/project_config_manager.rb
ceedling-0.15.0 lib/ceedling/project_config_manager.rb