Add fallback handling for blank board and title names in event payloads

This commit is contained in:
Jirka Hutárek
2026-02-27 19:00:14 +01:00
parent 97d188fae4
commit ad45eabfdc
@@ -140,6 +140,21 @@ class Notification::PushTarget::WebTest < ActiveSupport::TestCase
Notification::PushTarget::Web.new(@notification).process
end
test "payload for board change falls back when board name is blank" do
event = events(:logo_published)
event.update!(
action: "card_board_changed",
particulars: { "particulars" => { "new_board" => "" } }
)
@notification.update!(source: event)
@web_push_pool.expects(:queue).once.with do |payload, _|
payload[:body] == "Moved by #{event.creator.name}"
end
Notification::PushTarget::Web.new(@notification).process
end
test "payload for collection change includes new collection name" do
event = events(:logo_published)
event.update!(
@@ -206,6 +221,18 @@ class Notification::PushTarget::WebTest < ActiveSupport::TestCase
Notification::PushTarget::Web.new(@notification).process
end
test "payload for title change falls back when title is blank" do
event = events(:logo_published)
event.update!(action: "card_title_changed", particulars: { "particulars" => { "new_title" => "" } })
@notification.update!(source: event)
@web_push_pool.expects(:queue).once.with do |payload, _|
payload[:body] == "Renamed by #{event.creator.name}"
end
Notification::PushTarget::Web.new(@notification).process
end
test "payload for postponed includes Not Now" do
event = events(:logo_published)
event.update!(action: "card_postponed")