File tree Expand file tree Collapse file tree 2 files changed +24
-1
lines changed
lib/opentelemetry/instrumentation/rake/patches
test/opentelemetry/instrumentation/rake/patches Expand file tree Collapse file tree 2 files changed +24
-1
lines changed Original file line number Diff line number Diff line change @@ -29,7 +29,11 @@ def tracer
2929 end
3030
3131 def force_flush
32- OpenTelemetry . tracer_provider . force_flush if ::Rake . application . top_level_tasks . include? ( name )
32+ top_level_task_names = ::Rake . application . top_level_tasks . map { |t | t . split ( '[' ) . first }
33+
34+ if top_level_task_names . include? ( name )
35+ OpenTelemetry . tracer_provider . force_flush
36+ end
3337 end
3438 end
3539 end
Original file line number Diff line number Diff line change 5656 _ ( execute_span . parent_span_id ) . must_equal ( invoke_span . span_id )
5757 end
5858
59+ describe 'with a task argument' do
60+ it 'should call force_flush on OpenTelemetry.tracer_provider' do
61+ mock = Minitest ::Mock . new
62+ mock . expect ( :force_flush , nil )
63+ mock . expect ( :force_flush , nil )
64+
65+ Rake ::Task . define_task ( "#{ task_name } [:arg]" )
66+ task_string = "#{ task_name } [test_arg]"
67+
68+ Rake . application . instance_eval { @top_level_tasks = [ task_string ] }
69+
70+ OpenTelemetry . stub ( :tracer_provider , mock ) do
71+ Rake . application . invoke_task ( task_string )
72+ end
73+
74+ mock . verify
75+ end
76+ end
77+
5978 describe 'with a prerequisite task' do
6079 before do
6180 Rake ::Task . define_task ( prerequisite_task_name )
You can’t perform that action at this time.
0 commit comments