diff options
Diffstat (limited to 'spec/lib/gitlab/app_logger_spec.rb')
-rw-r--r-- | spec/lib/gitlab/app_logger_spec.rb | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/spec/lib/gitlab/app_logger_spec.rb b/spec/lib/gitlab/app_logger_spec.rb index 149c3d1f19f..4eb0d628291 100644 --- a/spec/lib/gitlab/app_logger_spec.rb +++ b/spec/lib/gitlab/app_logger_spec.rb @@ -7,9 +7,32 @@ RSpec.describe Gitlab::AppLogger, feature_category: :shared do specify { expect(described_class.primary_logger).to be Gitlab::AppJsonLogger } - it 'logs to AppJsonLogger' do - expect_any_instance_of(Gitlab::AppJsonLogger).to receive(:info).and_call_original + context 'when UNSTRUCTURED_RAILS_LOG is enabled' do + before do + stub_env('UNSTRUCTURED_RAILS_LOG', 'true') + end - subject.info('Hello World!') + it 'builds two Logger instances' do + expect(Gitlab::Logger).to receive(:new).and_call_original + expect(Gitlab::JsonLogger).to receive(:new).and_call_original + + subject.info('Hello World!') + end + + it 'logs info to multiple loggers' do + expect_any_instance_of(Gitlab::AppTextLogger).to receive(:info).and_call_original + expect_any_instance_of(Gitlab::AppJsonLogger).to receive(:info).and_call_original + + subject.info('Hello World!') + end + end + + context 'when UNSTRUCTURED_RAILS_LOG is disabled' do + it 'logs info to only the AppJsonLogger' do + expect_any_instance_of(Gitlab::AppTextLogger).not_to receive(:info).and_call_original + expect_any_instance_of(Gitlab::AppJsonLogger).to receive(:info).and_call_original + + subject.info('Hello World!') + end end end |