diff options
Diffstat (limited to 'spec/lib/gitlab/gon_helper_spec.rb')
-rw-r--r-- | spec/lib/gitlab/gon_helper_spec.rb | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/spec/lib/gitlab/gon_helper_spec.rb b/spec/lib/gitlab/gon_helper_spec.rb index dd4dcca809b..5a1fcc5e2dc 100644 --- a/spec/lib/gitlab/gon_helper_spec.rb +++ b/spec/lib/gitlab/gon_helper_spec.rb @@ -39,6 +39,58 @@ RSpec.describe Gitlab::GonHelper do helper.add_gon_variables end end + + describe 'sentry configuration' do + let(:clientside_dsn) { 'https://xxx@sentry.example.com/1' } + let(:environment) { 'staging' } + + describe 'sentry integration' do + before do + stub_config(sentry: { enabled: true, clientside_dsn: clientside_dsn, environment: environment }) + end + + it 'sets sentry dsn and environment from config' do + expect(gon).to receive(:sentry_dsn=).with(clientside_dsn) + expect(gon).to receive(:sentry_environment=).with(environment) + + helper.add_gon_variables + end + end + + describe 'new sentry integration' do + before do + stub_application_setting(sentry_enabled: true) + stub_application_setting(sentry_clientside_dsn: clientside_dsn) + stub_application_setting(sentry_environment: environment) + end + + context 'when enable_new_sentry_clientside_integration is disabled' do + before do + stub_feature_flags(enable_new_sentry_clientside_integration: false) + end + + it 'does not set sentry dsn and environment from config' do + expect(gon).not_to receive(:sentry_dsn=).with(clientside_dsn) + expect(gon).not_to receive(:sentry_environment=).with(environment) + + helper.add_gon_variables + end + end + + context 'when enable_new_sentry_clientside_integration is enabled' do + before do + stub_feature_flags(enable_new_sentry_clientside_integration: true) + end + + it 'sets sentry dsn and environment from config' do + expect(gon).to receive(:sentry_dsn=).with(clientside_dsn) + expect(gon).to receive(:sentry_environment=).with(environment) + + helper.add_gon_variables + end + end + end + end end describe '#push_frontend_feature_flag' do |