Skip to content

Commit fbe1cfb

Browse files
committed
Fix lint and test case errors
1 parent c446e69 commit fbe1cfb

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

lib/optimizely/decision_service.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ def get_decision_for_flag(feature_flag, user_context, project_config, decide_opt
195195

196196
# Check holdouts
197197
holdouts = project_config.get_holdouts_for_flag(feature_flag['id'])
198+
198199
holdouts.each do |holdout|
199200
holdout_decision = get_variation_for_holdout(holdout, user_context, project_config)
200201
reasons.push(*holdout_decision.reasons)

spec/decision_service_holdout_spec.rb

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -364,8 +364,7 @@
364364

365365
expect(decision_result).not_to be_nil
366366

367-
decision_result.decision && decision_result.decision.source == Optimizely::DecisionService::DECISION_SOURCES['HOLDOUT'] && holdout_decisions << decision_result
368-
expect(decision_service_with_holdouts).not_to have_received(:get_variation_for_feature_experiment)
367+
expect(decision_service_with_holdouts).not_to have_received(:get_variation_for_feature_experiment) if decision_result.decision && decision_result.decision.source == Optimizely::DecisionService::DECISION_SOURCES['HOLDOUT']
369368
end
370369

371370
it 'should evaluate global holdouts for all flags' do
@@ -710,14 +709,15 @@
710709
notification_callback
711710
)
712711

713-
# Mock the decision service to return a holdout decision
712+
test_user_id = 'holdout_test_user'
713+
feature_flag = config_with_holdouts.feature_flag_key_map['boolean_feature']
714714
holdout = config_with_holdouts.holdouts.first
715715
expect(holdout).not_to be_nil, 'Should have at least one holdout configured'
716716

717717
holdout_variation = holdout['variations'].first
718718
expect(holdout_variation).not_to be_nil, 'Holdout should have at least one variation'
719719

720-
# Create a holdout decision
720+
# Mock the decision service to return a holdout decision
721721
holdout_decision = Optimizely::DecisionService::Decision.new(
722722
holdout,
723723
holdout_variation,
@@ -730,15 +730,14 @@
730730
[]
731731
)
732732

733-
# Mock get_variations_for_feature_list to return holdout decision
734-
allow_any_instance_of(Optimizely::DecisionService).to receive(:get_variations_for_feature_list)
733+
# Mock get_variations_for_feature_list instead of get_variation_for_feature
734+
allow(optimizely_with_mocked_events.decision_service).to receive(:get_variations_for_feature_list)
735735
.and_return([holdout_decision_result])
736736

737-
test_user_id = 'test_user'
738-
user_attributes = {'country' => 'us'}
739-
740-
_user_context = optimizely_with_mocked_events.create_user_context(test_user_id, user_attributes)
737+
user_context = optimizely_with_mocked_events.create_user_context(test_user_id, {})
738+
decision = user_context.decide(feature_flag['key'])
741739

740+
expect(decision).not_to be_nil, 'Decision should not be nil'
742741
expect(captured_notifications.length).to eq(1), 'Should have captured exactly one decision notification'
743742

744743
notification = captured_notifications.first

0 commit comments

Comments
 (0)