Fix over limit email reccommendation

This commit is contained in:
Uku Taht 2021-11-23 11:21:22 +02:00
parent 0e3db09f3c
commit 06d0d0eafa
2 changed files with 27 additions and 1 deletions

View File

@ -85,7 +85,7 @@ defmodule Plausible.Workers.CheckUsage do
defp check_regular_subscriber(subscriber, billing_mod) do
case check_pageview_limit(subscriber, billing_mod) do
{:over_limit, {last_cycle, last_cycle_usage}} ->
suggested_plan = Plausible.Billing.Plans.suggested_plan(subscriber, last_cycle)
suggested_plan = Plausible.Billing.Plans.suggested_plan(subscriber, last_cycle_usage)
template =
PlausibleWeb.Email.over_limit_email(

View File

@ -97,6 +97,32 @@ defmodule Plausible.Workers.CheckUsageTest do
assert Repo.reload(user).grace_period.end_date == Timex.shift(Timex.today(), days: 7)
end
test "reccommends a plan to upgrade to", %{
user: user
} do
billing_stub =
Plausible.Billing
|> stub(:last_two_billing_months_usage, fn _user -> {11_000, 11_000} end)
|> stub(:last_two_billing_cycles, fn _user ->
{Date.range(Timex.today(), Timex.today()), Date.range(Timex.today(), Timex.today())}
end)
insert(:subscription,
user: user,
paddle_plan_id: @paddle_id_10k,
last_bill_date: Timex.shift(Timex.today(), days: -1)
)
CheckUsage.perform(nil, billing_stub)
assert_delivered_email_matches(%{
html_body: html_body
})
# Should find 2 visiors
assert html_body =~ ~s(Based on that we recommend you select the 100k/mo plan.)
end
describe "enterprise customers" do
test "checks billable pageview usage for enterprise customer, sends usage information to enterprise@plausible.io",
%{