mirror of
https://github.com/plausible/analytics.git
synced 2024-12-24 18:12:44 +03:00
Stop expecting trial_expiry_date
to exist on upgrade (#3688)
* stop expecting trial_expiry_date to exist on upgrade * add test
This commit is contained in:
parent
d3094ffdb7
commit
0a29679afa
@ -208,13 +208,14 @@ defmodule PlausibleWeb.Components.Billing.PlanBox do
|
||||
end
|
||||
|
||||
defp usage_within_plan_limits?(%{usage: usage, user: user, plan_to_render: plan}) do
|
||||
# At this point, the user is guaranteed to have a `trial_expiry_date`.
|
||||
# Otherwise, they'd be ineligible for an upgrade and this function
|
||||
# would never be called.
|
||||
%Date{} = user.trial_expiry_date
|
||||
# At this point, the user is *not guaranteed* to have a `trial_expiry_date`,
|
||||
# because in the past we've let users upgrade without that constraint, as
|
||||
# well as transfer sites to those accounts. to these accounts we won't be
|
||||
# offering an extra pageview limit allowance margin though.
|
||||
invited_user? = is_nil(user.trial_expiry_date)
|
||||
|
||||
trial_active_or_ended_recently? =
|
||||
Timex.diff(Timex.today(), user.trial_expiry_date, :days) <= 10
|
||||
not invited_user? && Timex.diff(Timex.today(), user.trial_expiry_date, :days) <= 10
|
||||
|
||||
limit_checking_opts =
|
||||
cond do
|
||||
|
@ -754,6 +754,21 @@ defmodule PlausibleWeb.Live.ChoosePlanTest do
|
||||
refute enterprise_box =~ "10+ team members"
|
||||
refute enterprise_box =~ "Unlimited team members"
|
||||
end
|
||||
|
||||
test "allows to upgrade without a trial_expiry_date when the user owns a site", %{
|
||||
conn: conn,
|
||||
user: user
|
||||
} do
|
||||
user
|
||||
|> Plausible.Auth.User.changeset(%{trial_expiry_date: nil})
|
||||
|> Repo.update!()
|
||||
|
||||
{:ok, lv, _doc} = get_liveview(conn)
|
||||
doc = set_slider(lv, "100k")
|
||||
|
||||
refute class_of_element(doc, @growth_checkout_button) =~ "pointer-events-none"
|
||||
refute class_of_element(doc, @business_checkout_button) =~ "pointer-events-none"
|
||||
end
|
||||
end
|
||||
|
||||
describe "for a free_10k subscription" do
|
||||
|
Loading…
Reference in New Issue
Block a user