Aggiunge il rilevamento di invio e apertura delle email di campagna.
CI / scan_ruby (push) Failing after 12m56s
CI / scan_js (push) Successful in 12m23s
CI / lint (push) Failing after 12m15s

Ogni destinatario mostra se la mail è partita e se è stata aperta, con conteggi in dashboard.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-20 12:26:14 +02:00
co-authored by Cursor
parent ab57309f5c
commit 2db7504629
18 changed files with 332 additions and 5 deletions
@@ -65,6 +65,8 @@ class MailingsControllerTest < ActionDispatch::IntegrationTest
assert_equal "contacted", opportunities(:deal).pipeline_stage
assert_equal 2, ActionMailer::Base.deliveries.size
assert_equal "Ciao ASD Test Calcio", ActionMailer::Base.deliveries.last.subject
body = (ActionMailer::Base.deliveries.last.html_part || ActionMailer::Base.deliveries.last).body.to_s
assert_match(%r{/t/o/#{Regexp.escape(recipient.reload.tracking_token)}\.gif}, body)
end
test "queue send requires test email first" do
@@ -96,7 +98,9 @@ class MailingsControllerTest < ActionDispatch::IntegrationTest
mail = ActionMailer::Base.deliveries.last
assert_equal [users(:admin).email], mail.to
assert_match(/\[TEST\]/, mail.subject)
body = (mail.html_part || mail).body.to_s
assert_match(/Società Prova/, mail.subject)
assert_no_match(%r{/t/o/}, body)
assert mailing.reload.tested?
assert_equal users(:admin).email, mailing.test_sent_to
end