settings: Use original FREE_TRIAL_DAYS for cloud free trials.

* Renamed FREE_TRIAL_DAYS to CLOUD_FREE_TRIAL_DAYS.
* Used `cloud_free_trial_days` to get free trial days secret.
This commit is contained in:
Aman Agrawal 2023-12-09 17:31:27 +00:00 committed by Tim Abbott
parent 34704daee7
commit ccd60bc7e2
7 changed files with 17 additions and 17 deletions

View File

@ -3628,11 +3628,11 @@ def compute_plan_parameters(
def get_free_trial_days() -> Optional[int]: def get_free_trial_days() -> Optional[int]:
return settings.FREE_TRIAL_DAYS return settings.CLOUD_FREE_TRIAL_DAYS
def is_free_trial_offer_enabled() -> bool: def is_free_trial_offer_enabled() -> bool:
return settings.FREE_TRIAL_DAYS not in (None, 0) return settings.CLOUD_FREE_TRIAL_DAYS not in (None, 0)
def ensure_customer_does_not_have_active_plan(customer: Customer) -> None: def ensure_customer_does_not_have_active_plan(customer: Customer) -> None:

View File

@ -1033,7 +1033,7 @@ class StripeTest(StripeTestCase):
user = self.example_user("hamlet") user = self.example_user("hamlet")
self.login_user(user) self.login_user(user)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
response = self.client_get("/upgrade/") response = self.client_get("/upgrade/")
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
@ -1253,7 +1253,7 @@ class StripeTest(StripeTestCase):
self.login_user(user) self.login_user(user)
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
response = self.client_get("/upgrade/") response = self.client_get("/upgrade/")
self.assert_in_success_response( self.assert_in_success_response(
@ -1992,7 +1992,7 @@ class StripeTest(StripeTestCase):
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)
self.assertEqual(response["Location"], "http://zulip.testserver/billing") self.assertEqual(response["Location"], "http://zulip.testserver/billing")
with self.settings(FREE_TRIAL_DAYS=30): with self.settings(CLOUD_FREE_TRIAL_DAYS=30):
response = self.client_get("/upgrade/") response = self.client_get("/upgrade/")
self.assertEqual(response.status_code, 302) self.assertEqual(response.status_code, 302)
self.assertEqual(response["Location"], "http://zulip.testserver/billing") self.assertEqual(response["Location"], "http://zulip.testserver/billing")
@ -2889,7 +2889,7 @@ class StripeTest(StripeTestCase):
self.login_user(user) self.login_user(user)
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
with time_machine.travel(self.now, tick=False): with time_machine.travel(self.now, tick=False):
self.add_card_and_upgrade(user, schedule="monthly") self.add_card_and_upgrade(user, schedule="monthly")
plan = CustomerPlan.objects.get() plan = CustomerPlan.objects.get()
@ -2944,7 +2944,7 @@ class StripeTest(StripeTestCase):
self.login_user(user) self.login_user(user)
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
with time_machine.travel(self.now, tick=False): with time_machine.travel(self.now, tick=False):
self.add_card_and_upgrade(user, schedule="annual") self.add_card_and_upgrade(user, schedule="annual")
plan = CustomerPlan.objects.get() plan = CustomerPlan.objects.get()
@ -2996,7 +2996,7 @@ class StripeTest(StripeTestCase):
user = self.example_user("hamlet") user = self.example_user("hamlet")
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
with time_machine.travel(self.now, tick=False): with time_machine.travel(self.now, tick=False):
self.local_upgrade( self.local_upgrade(
self.seat_count, True, CustomerPlan.BILLING_SCHEDULE_ANNUAL, False, True self.seat_count, True, CustomerPlan.BILLING_SCHEDULE_ANNUAL, False, True
@ -3048,7 +3048,7 @@ class StripeTest(StripeTestCase):
self.login_user(user) self.login_user(user)
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
with time_machine.travel(self.now, tick=False): with time_machine.travel(self.now, tick=False):
self.local_upgrade( self.local_upgrade(
self.seat_count, True, CustomerPlan.BILLING_SCHEDULE_ANNUAL, False, True self.seat_count, True, CustomerPlan.BILLING_SCHEDULE_ANNUAL, False, True
@ -3159,7 +3159,7 @@ class StripeTest(StripeTestCase):
self.login_user(user) self.login_user(user)
free_trial_end_date = self.now + timedelta(days=60) free_trial_end_date = self.now + timedelta(days=60)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
with time_machine.travel(self.now, tick=False): with time_machine.travel(self.now, tick=False):
self.local_upgrade( self.local_upgrade(
self.seat_count, True, CustomerPlan.BILLING_SCHEDULE_ANNUAL, False, True self.seat_count, True, CustomerPlan.BILLING_SCHEDULE_ANNUAL, False, True

View File

@ -69,10 +69,10 @@ a few things to keep in mind while conducting these tests manually:
Here are some flows to test when upgrading a Zulip organization: Here are some flows to test when upgrading a Zulip organization:
- When free trials are not enabled, i.e. `FREE_TRIAL_DAYS` is not set - When free trials are not enabled, i.e. `CLOUD_FREE_TRIAL_DAYS` is not set
to any value in `dev_settings.py` (aka the default). You can to any value in `dev_settings.py` (aka the default). You can
double-check that the setting is disabled by verifying double-check that the setting is disabled by verifying
`./scripts/get-django-setting FREE_TRIAL_DAYS` returns 0. `./scripts/get-django-setting CLOUD_FREE_TRIAL_DAYS` returns 0.
- Using a valid card number like `4242 4242 4242 4242`. - Using a valid card number like `4242 4242 4242 4242`.
- Using an invalid card number like `4000000000000341`, which will add the card - Using an invalid card number like `4000000000000341`, which will add the card
@ -84,7 +84,7 @@ Here are some flows to test when upgrading a Zulip organization:
- Upgrade an organization when free trials are enabled. The free - Upgrade an organization when free trials are enabled. The free
trials setting has been (possibly permanently) disabled in trials setting has been (possibly permanently) disabled in
production for some time now, so testing this code path is not a production for some time now, so testing this code path is not a
priority. You can set `FREE_TRIAL_DAYS` to any number greater than priority. You can set `CLOUD_FREE_TRIAL_DAYS` to any number greater than
`0` in `dev_settings.py` to enable free trials. There are two `0` in `dev_settings.py` to enable free trials. There are two
different flows to test here: different flows to test here:
- Right after the organization is created by following the instructions in the - Right after the organization is created by following the instructions in the

View File

@ -575,7 +575,7 @@ class PlansPageTest(ZulipTestCase):
self.assert_in_success_response([current_plan, upgrade_to_standard], result) self.assert_in_success_response([current_plan, upgrade_to_standard], result)
self.assert_not_in_success_response([sign_up_now, sponsorship_pending], result) self.assert_not_in_success_response([sign_up_now, sponsorship_pending], result)
with self.settings(FREE_TRIAL_DAYS=60): with self.settings(CLOUD_FREE_TRIAL_DAYS=60):
result = self.client_get("/plans/", subdomain="zulip") result = self.client_get("/plans/", subdomain="zulip")
self.assert_in_success_response([current_plan, "Start 60-day free trial"], result) self.assert_in_success_response([current_plan, "Start 60-day free trial"], result)
self.assert_not_in_success_response( self.assert_not_in_success_response(

View File

@ -1754,7 +1754,7 @@ class RealmCreationTest(ZulipTestCase):
self.assert_length(messages, message_count) self.assert_length(messages, message_count)
self.assertIn(text, messages[0].content) self.assertIn(text, messages[0].content)
@override_settings(OPEN_REALM_CREATION=True, FREE_TRIAL_DAYS=30) @override_settings(OPEN_REALM_CREATION=True, CLOUD_FREE_TRIAL_DAYS=30)
def test_create_realm_during_free_trial(self) -> None: def test_create_realm_during_free_trial(self) -> None:
password = "test" password = "test"
string_id = "custom-test" string_id = "custom-test"

View File

@ -546,7 +546,7 @@ ARCHIVED_DATA_VACUUMING_DELAY_DAYS = 30
# are available to all realms. # are available to all realms.
BILLING_ENABLED = False BILLING_ENABLED = False
FREE_TRIAL_DAYS: Optional[int] = int(get_secret("free_trial_days", "0")) CLOUD_FREE_TRIAL_DAYS: Optional[int] = int(get_secret("cloud_free_trial_days", "0"))
# Custom message (supports HTML) to be shown in the navbar of landing pages. Used mainly for # Custom message (supports HTML) to be shown in the navbar of landing pages. Used mainly for
# making announcements. # making announcements.

View File

@ -257,7 +257,7 @@ RATE_LIMITING_RULES: Dict[str, List[Tuple[int, int]]] = {
"password_reset_form_by_email": [], "password_reset_form_by_email": [],
} }
FREE_TRIAL_DAYS: Optional[int] = None CLOUD_FREE_TRIAL_DAYS: Optional[int] = None
SCIM_CONFIG: Dict[str, SCIMConfigDict] = { SCIM_CONFIG: Dict[str, SCIMConfigDict] = {
"zulip": { "zulip": {