Skip to content

Commit

Permalink
Remove order link in non-user failed payment email
Browse files Browse the repository at this point in the history
  • Loading branch information
kristinalim committed Sep 1, 2018
1 parent a6dc2b9 commit 174d3e1
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 4 deletions.
7 changes: 4 additions & 3 deletions app/views/subscription_mailer/failed_payment_email.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@

%p.callout
= t("email_so_failed_payment_explainer_html", distributor: @order.distributor.name)
= t("email_so_edit_false_html",
orders_close_at: l(@order.order_cycle.orders_close_at, format: mail_long_datetime_format),
order_url: spree.order_url(@order))
- if @order.user.present?
= t("email_so_edit_false_html",
orders_close_at: l(@order.order_cycle.orders_close_at, format: mail_long_datetime_format),
order_url: spree.order_url(@order))
= t("email_so_contact_distributor_html", distributor: @order.distributor.name, email: @order.distributor.contact.email)

- if @order.errors.any?
Expand Down
26 changes: 25 additions & 1 deletion spec/mailers/subscription_mailer_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,8 @@
end

describe "failed payment notification" do
let(:subscription) { create(:subscription, with_items: true) }
let(:customer) { create(:customer) }
let(:subscription) { create(:subscription, customer: customer, with_items: true) }
let(:proxy_order) { create(:proxy_order, subscription: subscription) }
let!(:order) { proxy_order.initialise_order! }

Expand All @@ -150,6 +151,29 @@
expect(body).to include strip_tags(details)
expect(body).to include "This is a payment failure error"
end

describe "linking to order page" do
let(:order_link_href) { "href=\"#{spree.order_url(order)}\"" }

let(:email) { SubscriptionMailer.deliveries.last }
let(:body) { email.body.encoded }

context "when the customer has a user account" do
let(:customer) { create(:customer) }

it "provides link to view details" do
expect(body).to match /#{order_link_href}/
end
end

context "when the customer has no user account" do
let(:customer) { create(:customer, user: nil) }

it "does not provide link" do
expect(body).to_not match /#{order_link_href}/
end
end
end
end

describe "order placement summary" do
Expand Down

0 comments on commit 174d3e1

Please sign in to comment.