6dca7b5b0d
In case the repository checks are disabled, do not send the mails. Otherwise it might send the same failures over and over again.
41 lines
1.1 KiB
Ruby
41 lines
1.1 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe AdminEmailWorker do
|
|
subject(:worker) { described_class.new }
|
|
|
|
describe '.perform' do
|
|
it 'does not attempt to send repository check mail when they are disabled' do
|
|
stub_application_setting(repository_checks_enabled: false)
|
|
|
|
expect(worker).not_to receive(:send_repository_check_mail)
|
|
|
|
worker.perform
|
|
end
|
|
|
|
context 'repository_checks enabled' do
|
|
before do
|
|
stub_application_setting(repository_checks_enabled: true)
|
|
end
|
|
|
|
it 'checks if repository check mail should be sent' do
|
|
expect(worker).to receive(:send_repository_check_mail)
|
|
|
|
worker.perform
|
|
end
|
|
|
|
it 'does not send mail when there are no failed repos' do
|
|
expect(RepositoryCheckMailer).not_to receive(:notify)
|
|
|
|
worker.perform
|
|
end
|
|
|
|
it 'send mail when there is a failed repo' do
|
|
create(:project, last_repository_check_failed: true, last_repository_check_at: Date.yesterday)
|
|
|
|
expect(RepositoryCheckMailer).to receive(:notify).and_return(spy)
|
|
|
|
worker.perform
|
|
end
|
|
end
|
|
end
|
|
end
|