mirror of
https://github.com/Evolix/chexpire.git
synced 2024-05-05 18:25:09 +02:00
Fixed email notifications of recurrent failures
This commit is contained in:
parent
7d5c7de7fe
commit
77c26264f0
|
@ -22,7 +22,7 @@ module Notifier
|
||||||
.deliver_now
|
.deliver_now
|
||||||
end
|
end
|
||||||
|
|
||||||
def ssl_notify_expires_soon(_notification)
|
def ssl_notify_expires_soon(check_notification)
|
||||||
NotificationsMailer.with(check_notification: check_notification)
|
NotificationsMailer.with(check_notification: check_notification)
|
||||||
.ssl_expires_soon
|
.ssl_expires_soon
|
||||||
.deliver_now
|
.deliver_now
|
||||||
|
|
|
@ -13,6 +13,7 @@ module Notifier
|
||||||
def checks_recurrent_failures(min_consecutive)
|
def checks_recurrent_failures(min_consecutive)
|
||||||
Check
|
Check
|
||||||
.active
|
.active
|
||||||
|
.auto
|
||||||
.consecutive_failures(min_consecutive)
|
.consecutive_failures(min_consecutive)
|
||||||
.includes(:user)
|
.includes(:user)
|
||||||
.where.not(user: ignore_users)
|
.where.not(user: ignore_users)
|
||||||
|
|
|
@ -84,6 +84,15 @@ FactoryBot.define do
|
||||||
active false
|
active false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
trait :auto do
|
||||||
|
mode :auto
|
||||||
|
end
|
||||||
|
|
||||||
|
trait :manual do
|
||||||
|
mode :manual
|
||||||
|
domain "unupported.wxyz"
|
||||||
|
end
|
||||||
|
|
||||||
trait :with_notifications do
|
trait :with_notifications do
|
||||||
after :create do |check|
|
after :create do |check|
|
||||||
create_list :check_notification, 2,
|
create_list :check_notification, 2,
|
||||||
|
|
|
@ -91,6 +91,16 @@ module Notifier
|
||||||
assert_includes checks, c2
|
assert_includes checks, c2
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "#checks_recurrent_failures ignores manual checks" do
|
||||||
|
c1 = create(:check, :last_runs_failed, :manual)
|
||||||
|
c2 = create(:check, :last_runs_failed, :auto)
|
||||||
|
|
||||||
|
checks = @resolver.checks_recurrent_failures(4)
|
||||||
|
|
||||||
|
assert_not_includes checks, c1
|
||||||
|
assert_includes checks, c2
|
||||||
|
end
|
||||||
|
|
||||||
test "#checks_recurrent_failures ignores user having notification disabled" do
|
test "#checks_recurrent_failures ignores user having notification disabled" do
|
||||||
c1 = create(:check, :last_runs_failed)
|
c1 = create(:check, :last_runs_failed)
|
||||||
c1.user.update_attribute(:notifications_enabled, false)
|
c1.user.update_attribute(:notifications_enabled, false)
|
||||||
|
|
Loading…
Reference in a new issue