Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
add case where propagator throws
  • Loading branch information
wperron committed Nov 14, 2022
commit d95e96b2c9073024bcce0ae6f346f54f6d227827
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,13 @@
end

describe 'config[:response_propagators]' do
describe 'with default options' do
it 'does not inject the traceresponse header' do
res = Rack::MockRequest.new(rack_builder).get('/ping', env)
_(res.headers).wont_include('traceresponse')
end
end

describe 'with ResponseTextMapPropagator' do
let(:config) { default_config.merge(response_propagators: [OpenTelemetry::Trace::Propagation::TraceContext::ResponseTextMapPropagator.new]) }

Expand All @@ -320,6 +327,21 @@
_(res.headers).must_include('traceresponse')
end
end

describe 'propagator throws' do
class MockPropagator < OpenTelemetry::Trace::Propagation::TraceContext::ResponseTextMapPropagator
def inject(carrier)
raise 'Injection failed'
end
end

let(:config) { default_config.merge(response_propagators: [MockPropagator.new]) }

it 'handles the error gracefully' do
res = Rack::MockRequest.new(rack_builder).get('/ping', env)
_(res.headers).wont_include('traceresponse')
end
end
end

describe '#call with error' do
Expand Down