diff options
Diffstat (limited to 'spec/workers/namespaces/in_product_marketing_emails_worker_spec.rb')
-rw-r--r-- | spec/workers/namespaces/in_product_marketing_emails_worker_spec.rb | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/spec/workers/namespaces/in_product_marketing_emails_worker_spec.rb b/spec/workers/namespaces/in_product_marketing_emails_worker_spec.rb index 722ecfc1dec..24143e8cf8a 100644 --- a/spec/workers/namespaces/in_product_marketing_emails_worker_spec.rb +++ b/spec/workers/namespaces/in_product_marketing_emails_worker_spec.rb @@ -3,25 +3,43 @@ require 'spec_helper' RSpec.describe Namespaces::InProductMarketingEmailsWorker, '#perform' do - context 'when the experiment is inactive' do + context 'when the application setting is enabled' do before do - stub_experiment(in_product_marketing_emails: false) + stub_application_setting(in_product_marketing_emails_enabled: true) end - it 'does not execute the in product marketing emails service' do - expect(Namespaces::InProductMarketingEmailsService).not_to receive(:send_for_all_tracks_and_intervals) + context 'when the experiment is inactive' do + before do + stub_experiment(in_product_marketing_emails: false) + end - subject.perform + it 'does not execute the in product marketing emails service' do + expect(Namespaces::InProductMarketingEmailsService).not_to receive(:send_for_all_tracks_and_intervals) + + subject.perform + end + end + + context 'when the experiment is active' do + before do + stub_experiment(in_product_marketing_emails: true) + end + + it 'calls the send_for_all_tracks_and_intervals method on the in product marketing emails service' do + expect(Namespaces::InProductMarketingEmailsService).to receive(:send_for_all_tracks_and_intervals) + + subject.perform + end end end - context 'when the experiment is active' do + context 'when the application setting is disabled' do before do - stub_experiment(in_product_marketing_emails: true) + stub_application_setting(in_product_marketing_emails_enabled: false) end - it 'calls the send_for_all_tracks_and_intervals method on the in product marketing emails service' do - expect(Namespaces::InProductMarketingEmailsService).to receive(:send_for_all_tracks_and_intervals) + it 'does not execute the in product marketing emails service' do + expect(Namespaces::InProductMarketingEmailsService).not_to receive(:send_for_all_tracks_and_intervals) subject.perform end |