Class: TaskInvoker
Overview
Ceedling - Test-Centered Build System for C
ThrowTheSwitch.org
Copyright (c) 2010-25 Mike Karlesky, Mark VanderVoord, & Greg Williams
SPDX-License-Identifier: MIT
Instance Attribute Summary collapse
-
#first_run ⇒ Object
Returns the value of attribute first_run.
Instance Method Summary collapse
- #add_release_task_regex(regex) ⇒ Object
- #add_test_task_regex(regex) ⇒ Object
- #invoke_release_objects(objects) ⇒ Object
- #invoke_test_objects(test:, objects:) ⇒ Object
- #invoked?(regex) ⇒ Boolean
- #release_invoked? ⇒ Boolean
- #setup ⇒ Object
- #test_invoked? ⇒ Boolean
Instance Attribute Details
#first_run ⇒ Object
Returns the value of attribute first_run.
10 11 12 |
# File 'lib/ceedling/task_invoker.rb', line 10 def first_run @first_run end |
Instance Method Details
#add_release_task_regex(regex) ⇒ Object
27 28 29 |
# File 'lib/ceedling/task_invoker.rb', line 27 def add_release_task_regex(regex) @release_regexs << regex end |
#add_test_task_regex(regex) ⇒ Object
23 24 25 |
# File 'lib/ceedling/task_invoker.rb', line 23 def add_test_task_regex(regex) @test_regexs << regex end |
#invoke_release_objects(objects) ⇒ Object
64 65 66 67 68 |
# File 'lib/ceedling/task_invoker.rb', line 64 def invoke_release_objects(objects) @batchinator.exec(workload: :compile, things: objects) do |object| @rake_wrapper[object].invoke end end |
#invoke_test_objects(test:, objects:) ⇒ Object
57 58 59 60 61 62 |
# File 'lib/ceedling/task_invoker.rb', line 57 def invoke_test_objects(test:, objects:) @batchinator.exec(workload: :compile, things: objects) do |object| # Encode context with concatenated compilation target: <test name>+<object file> @rake_wrapper["#{test}+#{object}"].invoke end end |
#invoked?(regex) ⇒ Boolean
53 54 55 |
# File 'lib/ceedling/task_invoker.rb', line 53 def invoked?(regex) return @rake_utils.task_invoked?(regex) end |
#release_invoked? ⇒ Boolean
42 43 44 45 46 47 48 49 50 51 |
# File 'lib/ceedling/task_invoker.rb', line 42 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 |
#setup ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/ceedling/task_invoker.rb', line 14 def setup @test_regexs = [/^#{TEST_ROOT_NAME}:/] @release_regexs = [/^#{RELEASE_ROOT_NAME}(:|$)/] @first_run = true # Alias for brevity @batchinator = @build_batchinator end |
#test_invoked? ⇒ Boolean
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/ceedling/task_invoker.rb', line 31 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 |