class TaskInvoker

Attributes

first_run[RW]

Public Instance Methods

add_release_task_regex(regex) click to toggle source
# File lib/ceedling/task_invoker.rb, line 19
def add_release_task_regex(regex)
  @release_regexs << regex
end
add_test_task_regex(regex) click to toggle source
# File lib/ceedling/task_invoker.rb, line 15
def add_test_task_regex(regex)
  @test_regexs << regex
end
invoke_release_dependencies_files(files) click to toggle source
# File lib/ceedling/task_invoker.rb, line 110
def invoke_release_dependencies_files(files)
  par_map(PROJECT_COMPILE_THREADS, files) do |file|
    @rake_wrapper[file].invoke
  end
end
invoke_release_objects(objects) click to toggle source
# File lib/ceedling/task_invoker.rb, line 116
def invoke_release_objects(objects)
  par_map(PROJECT_COMPILE_THREADS, objects) do |object|
    @rake_wrapper[object].invoke
  end
end
invoke_test_dependencies_files(files) click to toggle source
# File lib/ceedling/task_invoker.rb, line 86
def invoke_test_dependencies_files(files)
  @dependinator.enhance_dependencies_dependencies( files )
  par_map(PROJECT_COMPILE_THREADS, files) do |file|
    reset_rake_task_for_changed_defines( file )
    @rake_wrapper[file].invoke
  end
end
invoke_test_executable(file) click to toggle source
# File lib/ceedling/task_invoker.rb, line 101
def invoke_test_executable(file)
  @rake_wrapper[file].invoke
end
invoke_test_mocks(mocks) click to toggle source
# File lib/ceedling/task_invoker.rb, line 56
def invoke_test_mocks(mocks)
  @dependinator.enhance_mock_dependencies( mocks )
  mocks.each { |mock|
    reset_rake_task_for_changed_defines( mock )
    @rake_wrapper[mock].invoke
  }
end
invoke_test_objects(objects) click to toggle source
# File lib/ceedling/task_invoker.rb, line 94
def invoke_test_objects(objects)
  par_map(PROJECT_COMPILE_THREADS, objects) do |object|
    reset_rake_task_for_changed_defines( object )
    @rake_wrapper[object].invoke
  end
end
invoke_test_preprocessed_files(files) click to toggle source
# File lib/ceedling/task_invoker.rb, line 78
def invoke_test_preprocessed_files(files)
  @dependinator.enhance_preprocesed_file_dependencies( files )
  par_map(PROJECT_COMPILE_THREADS, files) do |file|
    reset_rake_task_for_changed_defines( file )
    @rake_wrapper[file].invoke
  end
end
invoke_test_results(result) click to toggle source
# File lib/ceedling/task_invoker.rb, line 105
def invoke_test_results(result)
  @dependinator.enhance_results_dependencies( result )
  @rake_wrapper[result].invoke
end
invoke_test_runner(runner) click to toggle source
# File lib/ceedling/task_invoker.rb, line 64
def invoke_test_runner(runner)
  @dependinator.enhance_runner_dependencies( runner )
  reset_rake_task_for_changed_defines( runner )
  @rake_wrapper[runner].invoke
end
invoke_test_shallow_include_lists(files) click to toggle source
# File lib/ceedling/task_invoker.rb, line 70
def invoke_test_shallow_include_lists(files)
  @dependinator.enhance_shallow_include_lists_dependencies( files )
  par_map(PROJECT_COMPILE_THREADS, files) do |file|
    reset_rake_task_for_changed_defines( file )
    @rake_wrapper[file].invoke
  end
end
invoked?(regex) click to toggle source
# File lib/ceedling/task_invoker.rb, line 45
def invoked?(regex)
  return @rake_utils.task_invoked?(regex)
end
release_invoked?() click to toggle source
# File lib/ceedling/task_invoker.rb, line 34
def release_invoked?
  invoked = false
  
  @release_regexs.each do |regex|
    invoked = true if (@rake_utils.task_invoked?(regex))
    break if invoked
  end
  
  return invoked
end
reset_rake_task_for_changed_defines(file) click to toggle source
# File lib/ceedling/task_invoker.rb, line 49
def reset_rake_task_for_changed_defines(file)
  if !(file =~ /#{VENDORS_FILES.map{|ignore| '\b' + ignore.ext(File.extname(file)) + '\b'}.join('|')}$/)
    @rake_wrapper[file].clear_actions if @first_run == false && @project_config_manager.test_defines_changed
    @rake_wrapper[file].reenable if @first_run == false && @project_config_manager.test_defines_changed
  end
end
setup() click to toggle source
# File lib/ceedling/task_invoker.rb, line 9
def setup
  @test_regexs = [/^#{TEST_ROOT_NAME}:/]
  @release_regexs = [/^#{RELEASE_ROOT_NAME}(:|$)/]
  @first_run = true
end
test_invoked?() click to toggle source
# File lib/ceedling/task_invoker.rb, line 23
def test_invoked?
  invoked = false
  
  @test_regexs.each do |regex|
    invoked = true if (@rake_utils.task_invoked?(regex))
    break if invoked
  end
  
  return invoked
end