Skip to content

Commit d638d20

Browse files
bcobbmikeproeng37
authored andcommitted
EventBuilder uses the same logger as Project (#122)
1 parent e91cd75 commit d638d20

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

lib/optimizely.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ def initialize(datafile, event_dispatcher = nil, logger = nil, error_handler = n
7575
end
7676

7777
@decision_service = DecisionService.new(@config, @user_profile_service)
78-
@event_builder = EventBuilder.new(@config, logger)
78+
@event_builder = EventBuilder.new(@config, @logger)
7979
@notification_center = NotificationCenter.new(@logger, @error_handler)
8080
end
8181

spec/project_spec.rb

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -472,6 +472,19 @@ class InvalidErrorHandler; end
472472
expect(project_instance.event_dispatcher).to have_received(:dispatch_event).with(Optimizely::Event.new(:post, conversion_log_url, params, post_headers)).once
473473
end
474474

475+
it 'should properly track an event with tags even when the project does not have a custom logger' do
476+
project_instance = Optimizely::Project.new(config_body_JSON)
477+
478+
params = @expected_track_event_params
479+
params[:visitors][0][:snapshots][0][:decisions][0][:variation_id] = '111129'
480+
params[:visitors][0][:snapshots][0][:events][0][:tags] = {revenue: 42}
481+
482+
project_instance.config.set_forced_variation('test_experiment', 'test_user', 'variation')
483+
allow(project_instance.event_dispatcher).to receive(:dispatch_event).with(instance_of(Optimizely::Event))
484+
project_instance.track('test_event', 'test_user', nil, revenue: 42)
485+
expect(project_instance.event_dispatcher).to have_received(:dispatch_event).with(Optimizely::Event.new(:post, conversion_log_url, params, post_headers)).once
486+
end
487+
475488
it 'should log a message if an exception has occurred during dispatching of the event' do
476489
allow(project_instance.event_dispatcher).to receive(:dispatch_event).with(any_args).and_raise(RuntimeError)
477490
project_instance.track('test_event', 'test_user')

0 commit comments

Comments
 (0)