From 51f331e8cccbd20f06f5de1d7f2b043da327fd0a Mon Sep 17 00:00:00 2001 From: Anton Khorev Date: Thu, 11 Jan 2024 17:11:09 +0300 Subject: [PATCH] Don't link to trace pages from failed import emails --- app/views/user_mailer/_gpx_description.html.erb | 3 ++- test/mailers/user_mailer_test.rb | 11 ++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/views/user_mailer/_gpx_description.html.erb b/app/views/user_mailer/_gpx_description.html.erb index eb9d5e102..429982136 100644 --- a/app/views/user_mailer/_gpx_description.html.erb +++ b/app/views/user_mailer/_gpx_description.html.erb @@ -1,4 +1,5 @@ -<% trace_name = link_to tag.strong(@trace_name), @trace_url %> +<% trace_name = tag.strong(@trace_name) %> +<% trace_name = link_to(trace_name, @trace_url) if @trace_url %> <% trace_description = tag.em(@trace_description) %> <% if @trace_tags.length > 0 %> <% tags = @trace_tags.map(&:tag).join(" ") %> diff --git a/test/mailers/user_mailer_test.rb b/test/mailers/user_mailer_test.rb index 1e3d9cc74..7857773ee 100644 --- a/test/mailers/user_mailer_test.rb +++ b/test/mailers/user_mailer_test.rb @@ -18,7 +18,7 @@ class UserMailerTest < ActionMailer::TestCase assert_match(/one two three/, email.html_part.body.to_s) end - def test_gpx_trace_link + def test_gpx_success_trace_link trace = create(:trace) email = UserMailer.gpx_success(trace, 100) body = Rails::Dom::Testing.html_document_fragment.parse(email.html_part.body) @@ -27,6 +27,15 @@ class UserMailerTest < ActionMailer::TestCase assert_select body, "a[href='#{url}']", :text => trace.name end + def test_gpx_failure_no_trace_link + trace = create(:trace) + email = UserMailer.gpx_failure(trace, "some error") + body = Rails::Dom::Testing.html_document_fragment.parse(email.html_part.body) + + url = Rails.application.routes.url_helpers.show_trace_url(trace.user, trace, :host => Settings.server_url, :protocol => Settings.server_protocol) + assert_select body, "a[href='#{url}']", :count => 0 + end + def test_html_encoding user = create(:user, :display_name => "Jack & Jill
") message = create(:message, :sender => user) -- 2.39.5