diff --git a/lib/split/helper.rb b/lib/split/helper.rb index 3fc74a47..163280f3 100644 --- a/lib/split/helper.rb +++ b/lib/split/helper.rb @@ -29,7 +29,8 @@ def ab_test(metric_descriptor, control = nil, *alternatives) end if block_given? - yield(alternative, (trial.metadata if trial)) + metadata = trial ? trial.metadata : {} + yield(alternative, metadata) else alternative end diff --git a/spec/helper_spec.rb b/spec/helper_spec.rb index 2846eb5b..564236d0 100755 --- a/spec/helper_spec.rb +++ b/spec/helper_spec.rb @@ -216,6 +216,17 @@ meta end).to eq('Meta1') end + + it 'should pass empty hash to helper block if library disabled' do + Split.configure do |config| + config.enabled = false + end + + expect(ab_test('my_experiment')).to eq 'one' + expect(ab_test('my_experiment') do |_, meta| + meta + end).to eq({}) + end end describe 'finished' do